我有一個包含3個字段的表。此表記錄了最近30天內每天到相關國家的通話時間記錄。在考慮null的情況下在MySQL中使用GROUP_CONCAT
C_Date Country C_Time
2012-10-01 India 1316
2012-10-01 USA 12
2012-10-01 UK 132
2012-10-01 Kuwait 134
2012-10-02 UK 135
2012-10-02 USA 136
2012-10-02 Singapore 137
我需要使用這些記錄生成一個表和一個線圖,我試圖寫MySQL查詢。基本上我需要僅爲選定的國家繪製這個。假設我想要印度,美國和英國;然後我需要拉設置這樣的記錄:
C_Date | Calling_Time
-----------+----------------------------------
2012-10-01 | 1316,12,132
2012-10-02 | 0,136,135
2012-10-03 | ...
... | ...
這是我的查詢:
SELECT C_Date, GROUP_CONCAT(C_Time
ORDER BY Country
SEPARATOR ',') as Calling_Time
FROM Call_Table t
WHERE Country
IN ('India', 'USA', 'UK')
GROUP BY C_Date
ORDER BY C_Date
結果是非常接近,但它忽略了空的結果。
C_Date | Calling_Time
-----------+----------------------------------
2012-10-01 | 1316,12,132
2012-10-02 | 136,135 (expected 0,136,135)
我可以改變我的查詢來獲取Calling_Time像 OR ,136135 OR 空,136135?(有段獨特的數字來表示每個國家)
在感謝提前!
這就像一個魅力! :-)非常感謝Devart! –