这是我的第一篇文章。希望你能帮助我这个愚蠢的问题:了解自我加入查询
我有这张桌上有一些身份证汽车的动作和日期。
我只需要ID 'IN'
和ID 'OUT'
之间的时间间隔。
这是我的查询和我得到的结果。
SELECT
T1.ID, T1.DATE_ID, T2.ID as ID_2, T2.DATE_ID AS DATE_2,
DATEDIFF("D", T1.DATE_ID, T2.DATE_ID) AS DaysDiff
FROM
My database T1
JOIN
My database T2 ON T1.ID = 'IN' AND T2.ID = 'OUT'
WHERE
T1.DATE_ID >= '2017/01/01' AND T2.DATE_ID >= '2017/01/01'
GROUP BY
T1.ID, T1.DATE_ID, T2.ID, T2.DATE_ID
ORDER BY
DATE_ID
输出:
ID DATE ID_2 DATE_2 DaysDiff
-------------------------------------------------
IN 2017/02/15 OUT 2017/04/26 70
IN 2017/02/15 OUT 2017/10/05 232
IN 2017/04/26 OUT 2017/04/26 0
IN 2017/04/26 OUT 2017/10/05 162
问题是,为什么我得到的额外行(第二和第三),我如何解雇他们?
非常感谢提前。