Rails / MYSQL - 查找所有没有关联的内容

时间:2010-10-13 17:10:14

标签: mysql ruby-on-rails

我有一个Employee模型和一个Shift模型。员工有很多班次,班次有约会。

我希望能够选择在给定日期可用的所有员工,即选择在给定日期不存在相关班次的所有员工。

我可以选择所有员工而不需要这样的转变:

SELECT users.* FROM users
LEFT JOIN shifts ON users.id = shifts.user_id
WHERE shifts.user_id IS NULL;

但这不是特定日期。

感谢。

1 个答案:

答案 0 :(得分:2)

SELECT users.* 
FROM users 
LEFT JOIN shifts ON users.id = shifts.user_id 
    AND shifts.Date = @SomeDate
WHERE shifts.user_id IS NULL;