1

以下のようなテーブルがあるかどうか聞いてみたい

Date & Hour               Phone           Status
2012-03-06 16:33:12     0292561234  Congestion
2012-03-06 16:33:12     0292561234  Congestion
2012-03-06 16:34:45     0292561234  Congestion
2012-03-06 16:46:50     0292561234  Congestion
2012-03-06 17:17:01     0292561234  Dial
2012-03-07 12:01:39     500         Queue
2012-03-07 12:02:10     500         Queue
2012-03-07 12:03:06     500         Queue

私は彼らに参加する必要があります

Date & Hour               Phone           Status
2012-03-06 16       0292561234  Congestion,Congestion,Congestion
2012-03-06 17       0292561234  Dial
2012-03-07 12       500         Queue,Queue,Queue

だから私はCONCAT条件を使用しています

SELECT calldate, dst, GROUP_CONCAT( lastapp )
FROM cdr
GROUP BY hour( calldate ) ;

しかし、それは次のように示されています

Date & Hour               Phone           Status
2012-03-06 16:33:12     0292561234  Congestion,Congestion,Congestion,Dial  
2012-03-06 17:17:01     0292561234  Dial
2012-03-07 12:01:39     500         Queue,Queue,Queue

間違ったスクリプトを使用していますか?

ご承知おき下さい。

ありがとうございました、

4

3 に答える 3

1

このクエリを試してください

SELECT DATE(calldate), dst, GROUP_CONCAT(lastapp)
FROM tbl 
GROUP BY dst, DATE(calldate);

http://www.mysqlperformanceblog.com/2006/09/04/group_concat-useful-group-by-extension/を参照してください

于 2013-02-26T04:19:35.097 に答える
1

以下をお試しください:

SELECT SUBSTR(calldate,1,13) as date_hour, dst, GROUP_CONCAT( lastapp )
FROM table
GROUP BY date_hour
于 2013-02-26T04:20:05.227 に答える
0

これも機能します...

SELECT DATE_FORMAT(calldate,"%Y-%m-%d %h"), dst, GROUP_CONCAT( lastapp )
FROM cdr
GROUP BY hour( calldate ) ;
于 2013-02-26T04:25:51.000 に答える