我在 SQL 中有一个表,它表示某种事件。我尝试确定特定事件未被另一个特定事件“跟随”的所有行。 在下表中,这将是有人注册但之后没有注销的所有行(露西和乔)。这可以通过 SQL 实现吗?如果可以,如何实现?
|Id|Name |Event |
==========================
|01|Fred |Sign up |
-------------------------
|02|Joe |Sign up |
--------------------------
|03|Lucy |Sign up |
--------------------------
|04|Joe |Do foo |
--------------------------
|05|Joe |Sign out |
--------------------------
|06|Joe |Sign up |
--------------------------
|07|Fred |Sign out |
--------------------------
非常感谢
最佳答案
SELECT x.*
FROM events x
LEFT
JOIN events y
ON y.name = x.name
AND y.id > x.id
AND y.event ='sign out'
WHERE x.event = 'sign up'
AND y.id IS NULL;
或者类似的东西
关于mysql - 在 SQL 中确定具有 "missing"后续条目的条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17829643/