私は次のものを持っています
user_id job_id job_offer_date
------- ------ --------------
1 123 2013-05-10
1 124 2013-07-19
2 127 2013-05-10
3 128 2013-06-15
レポートで使用する 2 つの個別のクエリをここに記述します。
クエリ #1 (これは既に機能しています)
このクエリは、最初の求人日が 2013 年 5 月 10 日までのすべてのユーザーを返します。これは簡単なクエリです。ユーザーがその日付までに何らかの仕事を持っていれば、そのユーザーが返されるからです。この場合、ユーザー #1、#2 が表示されます。
このクエリは次のようになります。
SELECT DISTINCT j.* FROM job WHERE j.job_offer_date <= '2013-05-10'
QUERY #2 (これは私の本当の質問です)
最初の求人日が 2013 年 5 月 10 日以降で 2013 年 7 月 19 日より前のユーザーを返すにはどうすればよいですか。この場合、ユーザー #1 は 2013 年 5 月 10 日までに最初のオファーを持っているため、結果に含めるべきではありません。この結果セットには、ユーザー #3 のみを含める必要があります。
ここで最も重要なキーは、ユーザー #1 が 2013 年 5 月 10 日までに最初のオファーを持っているため、クエリ #2 の結果セットから除外する必要があることです。