我有一个简单timestamp
的table
S,t
YPES和c
ounts像包括MySQL的结果空行
timestamp |t|c
==============
1415024797|1|1
1415025774|1|1
1415202785|1|1
1415204559|1|1
1415204593|1|2
1415629057|1|1
1415791322|2|1
1415797887|1|1
现在我得到它通过t
,并在一定日期YYYY-MM-DD
计数c
栏目组的结果
我必须将3600
添加到时间戳以尊重时区偏移!
SELECT From_unixtime(a.timestamp + 3600, '%Y-%m-%d') AS date,
Count(From_unixtime(a.timestamp + 3600, '%Y-%m-%d')) AS count,
a.t AS type
FROM table AS a
WHERE a.timestamp >= 1415322000 AND a.timestamp < 1415926800
GROUP BY From_unixtime(a.timestamp + 3600, '%Y-%m-%d'),
a.t
ORDER BY a.timestamp DESC
与此查询我得到的东西像
date |count | type
==========================
2014-12-03 | 3 | 1
2014-12-03 | 1 | 2
2014-12-04 | 3 | 1
2014-12-05 | 3 | 3
2014-12-07 | 4 | 2
2014-12-07 | 7 | 3
....
但我想获得
date | t_1 | t_2 | t_3
=============================
2014-12-03 | 3 | 1 | 0
2014-12-04 | 3 | 0 | 0
2014-12-05 | 0 | 0 | 3
2014-12-06 | 0 | 0 | 0
2014-12-07 | 0 | 4 | 7
....
所以每行有某种类型的所有计数的日期。
- 只有3种可能的(1 =>
t_1
,2 =>t_2
,3 =>t_3
) - 还与0值(
2014-12-06
)枣应包括 - 建查询我将使用PHP(foreach)
是的,但我需要空值,以及('2014-12-06') – Xaver 2014-11-14 16:57:10
可以大家分享一个例子吗? – Xaver 2014-11-14 21:30:20