2017-02-07 6 views
0

でwhere句などの集計に基づいて列の値を取得し、私が持っている3つの列、私は次のこと私はここに、SQLのnoob午前、単一のクエリ

を照会し、表示したい

<table> <tr>msg_date, msg_type, msg_flag</tr> <tr>20170207 A 0</tr> 20170207 B 0 20170207 B 0 20170207 A 1 20170207 A 1 20170207 A 1 20170207 C 7 20170207 C 7 20170207 C 7 </table>

を持つテーブル、 "このmsg_dateのための行数MSG_TYPEがCである"

msg_date、 "msg_flag == 0このmsg_dateの行の数"

は、誰かが助けてください可能性があり

答えて

1

ここで条件付き集計を使用できます。

SELECT msg_date, 
     SUM(CASE WHEN msg_flag = 0 THEN 1 ELSE 0 END) AS zero_count, 
     SUM(CASE WHEN msg_type = 'C' THEN 1 ELSE 0 END) AS c_count 
FROM yourTable 
GROUP BY msg_date 
関連する問題