1
マイmysqlデータベースは次のようなもので、case、group by、order byステートメントを適切に使用するのには苦労しています。サンプルデータセット:日付とケースステートメントでグループ化するSQL構文
ID Date Direction
1 2017-04-01 1
2 2017-04-01 1
3 2017-04-01 -1
4 2017-04-01 1
5 2017-04-01 -1
6 2017-04-01 1
7 2017-04-02 -1
8 2017-04-02 -1
9 2017-04-02 -1
10 2017-04-02 1
11 2017-04-02 -1
12 2017-04-03 -1
私はクエリは、次のレコードセットを返すように日付でこのテーブルとグループを集約するための最良の方法を理解しようとしています。
DATE positive negative
2017-04-01 4 2
2017-04-02 1 4
2017-04-03 0 1
:以下「正」の列は、単に方向> 0は同様に、「負」の欄は、そうのような方向< 0方向の列の数である方向列(上記)の数であります私はこのトピックのSOスレッドの数十を確認しました
SELECT DATE,
CASE
WHEN direction < 0 THEN 'negative'
WHEN direction > 0 THEN 'positive'
END AS updownType, count(*) AS updownCount
FROM table WHERE DATE BETWEEN '2017-04-01' AND '2017-04-03'
GROUP BY DATE, updownType
ORDER BY DATE ASC
が、私はまだ探しています何のちょうど間で実行していない:私は試してみました。どんな提案も評価されています
ありがとうございます! – Gunnar