Bu kodu vardırRails ActiveRecord: INNER JOIN yerine SOL JOIN ile birleşir
User.find(:all, :limit => 10, :joins => :user_points,
:select => "users.*, count(user_points.id)", :group =>
"user_points.user_id")
hangi üretir aşağıdaki sql
SELECT users.*, count(user_points.id)
FROM `users`
INNER JOIN `user_points`
ON user_points.user_id = users.id
GROUP BY user_points.user_id
LIMIT 10
o sol birleştirme yapmak yerine INNER User.find_by_sql
dışındaki yol KATILIN ve sorgu yazarak manuel mümkün mü?
harika, ben –
arıyordu tam olarak ne Tamam, ama Jakub gerçekten ne bekliyoruz ki? Puansız kullanıcılar? Eğer öyleyse, bence 'WHERE user_points.user_id IS NULL', hayır? –
@Kylo, bir dizeye yazmadan sol birleştirmeyi oluşturmak için raylarda bir yapı var mı? – BKSpurgeon