好的,现在我正在开发一个包含大量事件对象的程序。每个事件对象都有一个开始时间和结束时间(两个完整的时间戳)。很多事件都是连续的(一个事件的endTime与下一个事件的startTime相同),表明这两个事件是连续发生的。 如果我要将所有事件存储在SQLite或MySQL表中,是否可以查询每组连续事件?
说我的桌子看起来像这样。
id title start_time end_time
----------------------------------------------------------
1 Happy Time 4/3/2010 10:00:00 4/3/2010 13:00:00
2 Happier Time 4/3/2010 13:00:00 4/3/2010 18:00:00
3 Good Time 4/4/2010 18:00:00 4/4/2010 19:00:00
4 Gooder Time 4/4/2010 19:00:00 4/4/2010 22:00:00
5 Sad Time 4/6/2010 16:00:00 4/6/2010 20:00:00
我希望能够查询此表并查看id 1和2是连续的,id 3和4是连续的,id 5是......与自身连续。
我不知道从哪里开始的原因是因为每当我使用SQL查询时,结果都作为单独的行返回。结果中的一行永远不会成为子组的一部分。
如果您有任何问题,请随时发表评论。谢谢!
答案 0 :(得分:2)
SELECT a.id, a.title, a.start_time, a.end_time, b.id, b.title, b.start_time, b.end_time
FROM TABLE1 a, TABLE1 b
WHERE a.start_time = b.end_time
编辑:根据附加信息进行修改:
SELECT a.id, a.title, a.start_time, a.end_time, b.id, b.title, b.start_time, b.end_time
FROM TABLE1 a left join TABLE1 b ON a.start_time = b.end_time