2 回答

TA貢獻(xiàn)2012條經(jīng)驗(yàn) 獲得超12個(gè)贊
您可以使用TIMEDIFF()
:
SELECT
UID,
Min(timecolumn) AS `In Time`,
Max(timecolumn) AS `Out Time`,
TIMEDIFF(Max(timecolumn), Min(timecolumn)) AS `Time Diff`
FROM demotable
GROUP BY UID, DATE(timecolumn)

TA貢獻(xiàn)1840條經(jīng)驗(yàn) 獲得超5個(gè)贊
對(duì)于同一天的時(shí)差,可以使用group by子句。根據(jù)您的輸出-當(dāng)天沒(méi)有超時(shí),然后不顯示該行-為此,您可以通過(guò)檢查同一天的max(time)不等于min(time)來(lái)使用HAVING子句。
SELECT
UID,
Min(Time) AS `In Time`,
Max(Time) AS `Out Time`,
TIMEDIFF(Max(Time), Min(Time)) AS `Time Diff`
FROM demo
GROUP BY UID, DATE(Time)
HAVING Max(Time) != Min(Time)
您也可以在dbfiddle上看到正在運(yùn)行的演示
- 2 回答
- 0 關(guān)注
- 219 瀏覽
添加回答
舉報(bào)