记录我有以下SQL获得匹配的第一次约会的标准
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
我想在这里写两个单独的查询在报告中使用:
QUERY#1(我有这方面的工作已经)
此查询要返回其首个工作报价日期为2013年5月10日前的所有用户。这是一个简单的查询,因为如果用户在该日期之前有任何工作,它将返回他。在这种情况下,我会看到用户#1,#2。
这个查询看起来是这样的:
SELECT DISTINCT j.* FROM job WHERE j.job_offer_date <= '2013-05-10'
QUERY#2(这是我真正的问题)
如何回报用户,其第一份工作要约的日期是2013年5月10日AFTER和2013-7-19之前。在这种情况下,由于用户#1在2013年5月10日之前提供了他的第一个优惠,所以他不应该被包括在结果中。这个结果集应该只包含用户#3。
这里最重要的关键是因为用户#1在2013年5月10日之前有他的第一个提议,他应该是从查询#2中的结果集中排除。
你可以用where条件像job_offer_date>“2013年5月10日”和job_offer_date <“2013年5月10日” –
这并不工作,由于在原来的职位的最后一句话。 –
您是否需要获取user_ids或每个用户需要表中的所有行? – Alexey