-1
此查詢有一些問題。在MySQL中根據時間從表中獲取數據
晚上10點 - 上午08點(從2200(夜)至0800(上午))
這查詢不工作。我知道24小時後的日期變化,我認爲這是查詢不起作用的原因。
SELECT date(callDate) AS dates,
sum(calltype = 'MISSED') AS missedCall,
sum(callType = 'INCOMING') AS incomingCall,
sum(callType = 'OUTGOING') AS outgoingCall
FROM tbl_call_details
WHERE userId = '1' AND
date(callDate) BETWEEN '2014-04-01' AND '2014-04-31' AND
time(callDate) > '22:00' AND time(callDate) < '08:00'
GROUP BY date(callDate)
ORDER BY date(callDate) ASC
也嘗試了下面,但那也不適合我。
SELECT * FROM tbl_call_details
WHERE userId = '1' AND
date(callDate) BETWEEN '2014-04-01' AND '2014-04-31' AND
time(callDate) > '22:00' AND
time(callDate) < '08:00'
我想使用select查詢得到2200-0800之間的結果。如果有人有任何想法,請引導我。
這工作得非常好,因爲我在同一天加入了0800-2200。
SELECT date(callDate) AS dates,
sum(calltype = 'MISSED') AS missedCall,
sum(callType = 'INCOMING') AS incomingCall,
sum(callType = 'OUTGOING') AS outgoingCall
FROM tbl_call_details
WHERE userId = '1' AND
date(callDate) BETWEEN '2014-04-01' AND '2014-04-31' AND
time(callDate) > '08:00' AND time(callDate) < '22:00'
GROUP BY date(callDate)
ORDER BY date(callDate) ASC
OUTPUT: -
dates missedCall incomingCall outgoingCall
2014-04-01 0 5 22