次の条件でテーブルのレコードを含むクエリを作成しようとしています。
含まれるもの:
- ユーザーはジョブテーブルにレコードを持っています。
- ユーザーのjoin_dateがNULLであるか、ジョブテーブルにレコードがあります
除外する
- ユーザーのジョブテーブルにレコードがなく、NOTNULLjoin_dateがあります
これが私のスキーマです:
user --> user_id, join_date
job --> job_id, user_id
user rows
user_id: 1, join_date: 1/24/13
user_id: 2, join_date: 1/24/13
user_id: 3, join_date: NULL
user_id: 4, join_date: NULL
job rows
job_id: 101, user_id: 1
job_id: 102, user_id: 3
ユーザー#1、#3、および#4を返すクエリを作成したいと思います。ユーザー#4を返さない次のクエリがあります。
SELECT DISTINCT u.[user_id], u.join_date, uj.job_id
FROM [user] u
LEFT JOIN job uj ON (u.user_id = uj.user_id OR u.join_date is null)
WHERE uj.user_id = u.user_id