我有一个像这样的SQL表:
date | language
------------------------------
17/02/2014 9:01:02 | en
17/02/2014 10:01:02 | fr
17/02/2014 11:01:02 | en
17/02/2014 12:01:02 | de
...
我需要的是一个查询,它计算每个日期的语言值,以便输出看起来像这样
date | en | fr | de
----------------------------------
17/02/2014 | 2 | 1 | 1
18/02/2014 | 3 | 1 | 1
...
到目前为止,我能做的是计算每天的语言总数,以便我得到
date | language
-------------------------------
17/02/2014 | 4
18/02/2014 | 5
...
with(例如上个月)
SELECT DATE_FORMAT(created_at, '%m/%d/%Y'), count(*) FROM pwn_tweets WHERE created_at BETWEEN NOW() - INTERVAL 30 DAY AND NOW() GROUP BY DATE_FORMAT(created_at, '%m/%d/%Y')
我还可以用语言计算各种值,以便我得到
language | count
-------------------------------
en | 2
fr | 1
de | 1
...
带
SELECT source, COUNT(*) FROM `pwn_tweets` GROUP BY source
但我没有将两者结合起来,因为这会以某种方式将值显示为列。有什么建议我会怎么做?
谢谢!