2017-07-04 5 views
0

アクティビティチャートを描画する目的で、毎日の各タイプ(個別フィールド値)の行数をどのように数えることができますか?MYSQL - 毎日の行数を別のフィールドでグループ化して

種類毎に日付フィールドとテーブルとフィールドを検討:

CREATE TABLE TableName 
    (`PK` int, `type` varchar(1), `timestamp` datetime) 
; 

INSERT INTO TableName 
    (`PK`, `type`, `timestamp`) 
VALUES 
    (11, 'Q', '2013-01-04 22:23:56'), 
    (7, 'A', '2013-01-03 22:23:41'), 
    (8, 'C', '2013-01-04 22:23:42'), 
    (10, 'Q', '2013-01-05 22:23:56'), 
    (5, 'C', '2013-01-03 22:23:25'), 
    (12, 'Q', '2013-01-05 22:23:57'), 
    (6, 'Q', '2013-01-07 22:23:40'), 
    (4, 'Q', '2013-01-02 22:23:23'), 
    (9, 'A', '2013-01-05 22:23:55'), 
    (1, 'A', '2013-01-08 21:29:38'), 
    (2, 'Q', '2013-01-02 21:31:59'), 
    (3, 'C', '2013-01-04 21:32:22') 
; 

出力例のために(最後のフィールドは、そのタイプとその日の行の数である)であることができる:

'Q', 2013-01-04, 1 
'C', 2013-01-04, 2 
'A', 2013-01-03, 1 
'C', 2013-01-03, 2 
and so on... 

答えて

2
select `type`, date(`timestamp`) as the_date, count(*) as counter 
from MyTable 
group by `type`, date(`timestamp`) 
3

group byが必要です。

select `type`, date(`timestamp`), count(*) 
from tableName 
group by `type`, date(`timestamp`) 
関連する問題