Ho questo codiceRails ActiveRecord: si unisce con LEFT JOIN al posto di INNER JOIN
User.find(:all, :limit => 10, :joins => :user_points,
:select => "users.*, count(user_points.id)", :group =>
"user_points.user_id")
che genera SQL seguente
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
è possibile fare LEFT JOIN al posto di INNER JOIN altro modo che User.find_by_sql
e manualmente digitando la query?
grande, esattamente quello che stavo cercando –
Va bene, ma cosa Jakub davvero aspettarsi con questo? Utenti senza punti? Se è così, penso che sia necessario un 'WHERE user_points.user_id IS NULL', no? –
@Kylo esiste un costrutto in rotaia per creare il join sinistro senza digitare una stringa? – BKSpurgeon