現在表中分段記錄了一些信息如 user_id begin end duration typebegin end是起始和截止時間duration=end-begin 有個最大限制;所以造成了記錄上的分段.type: 有first,middle, last.代表是分段的次序.中間可能有多個middle.eg:| bceedabcecdgdcf | 2011-03-02 09:49:57 | 2011-03-02 10:04:57 |900 | first |
| bceedabcecdgdcf | 2011-03-02 10:04:57 | 2011-03-02 10:19:57 |900 | middle |
| bceedabcecdgdcf | 2011-03-02 10:19:57 | 2011-03-02 10:22:03 |126 | last |如上述變成| bceedabcecdgdcf | 2011-03-02 09:49:57 | 2011-03-02 10:22:03 |1926| single|
1 回答

呼喚遠方
TA貢獻1856條經驗 獲得超11個贊
可以使用groupby合并多條記錄,SQL如下:
select user_id, min(begin) as begin, max(end) as end, end-begin as duration from table group by user_id;
添加回答
舉報
0/150
提交
取消