SORU
30 Mart 2011, ÇARŞAMBA


activerecord içinde alt sorgular

Netice böyle kolayca alt sorgular yapabilirim

User.where(:id => Account.where(..).select(:user_id))

Bu üretir:

SELECT * FROM users WHERE id IN (SELECT user_id FROM accounts WHERE ..)

Nasıl raylar' 3 activerecord/ öncesinde/ meta_where? kullanarak bunu yapabilir miyim

İhtiyacım var/ gerçek alt sorgular, yakut, geçici (birkaç sorgu kullanarak).

CEVAP
31 Mayıs 2012, PERŞEMBE


Raylar artık varsayılan :) yapar

Message.where(user_id: Profile.select("user_id").where(gender: 'm'))

aşağıdaki SQL üretecek

SELECT "messages".* FROM "messages" WHERE "messages"."user_id" IN (SELECT user_id FROM "profiles" WHERE "profiles"."gender" = 'm')

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Fullscreen

    Fullscreen

    23 Mart 2006
  • TechXCentral

    TechXCentral

    12 Temmuz 2011
  • Warner Bros. UK

    Warner Bros.

    6 HAZİRAN 2008