获得最早的复制条目

时间:2016-09-06 09:27:51

标签: mysql sql

我正在努力学习基本的SQL。我所拥有的是以下TICKET表

-----------------------
|        TICKET       |
-----------------------
|id | date     | team |
-----------------------
| 1 |22/07/2016|   A  |
| 2 |24/07/2016|   B  |
| 3 |24/07/2016|   B  |
| 1 |23/07/2016|   C  |
| 4 |25/07/2016|   A  |
| 5 |26/07/2016|   A  |
| 5 |27/07/2016|   B  |
-----------------------

有时候,一两天后,门票可能会受到另一个团队的影响(参见上面的例子,1号门票从A队转到C队)。我需要的是一张原本属于A队的所有门票的清单(即 - 相同的身份,但不同的团队; A队是最早的)

我不太确定我已经拥有的#34;切换团队部分" :

SELECT id, date, team
FROM TICKET
WHERE (
    id IN (
        SELECT id
        FROM TICKET
        WHERE (team = 'B' OR team = 'C')
    )
)
AND team = 'A'

我应该在某个地方放置ORDER BY日期和GROUP BY子句吗?难道没有更好的解决方案吗?

1 个答案:

答案 0 :(得分:0)

select distinct t.id
from ticket t
     inner join ticket t1 on t.id=t1.id and t1.team<>'A' and t.date<t1.date
where
    t.team='A'