我需要Mysql查询: 我有一个包含start_date和End_date列的表格,我需要找出谁有未来的包。未来的包裹意味着在他的包裹到期日之前,他更新了他的包裹。例如:
person_id start_date end_date
101765 28-04-2017 27-07-2017
101765 10-07-2017 26-10-2017
从上面的例子中,同一个人在包裹结束之前更新了他的包裹。 所以我需要显示这些类型的包以显示为将来的包。
请帮我这个
将表与自身联接,并将一行的start_date
与另一行的end_date
进行比较。
SELECT *
FROM yourtable AS t1
JOIN yourtable AS t2
ON t1.person_id = t2.person_id AND t1.id != t2.id AND t1.start_date < t2.end_date
我假设您在表中还有一个唯一的id
字段,我用它来防止将行与自身进行比较。