3

これは私のMySQLテーブルのスナップショットです:

ここに画像の説明を入力してください

出力のようなピボットテーブルを取得するクエリを作成することは可能ですか...

ここに画像の説明を入力してください

4

2 に答える 2

3

のようなものはどうですか

SELECT url_host,
    SUM(CASE WHEN post_id = -1 THEN 1 ELSE 0 END) as post_id_minus1,
    SUM(CASE WHEN post_id = 0 THEN 1 ELSE 0 END) as post_id_0,
    etc...
FROM    YOUR_TABLE
GROUP BY url_host
于 2012-09-29T11:34:00.270 に答える
2

これに関するステートメントを使用CASEして、テーブルをピボットできます。

SELECT  url_host,
        COUNT(CASE WHEN post_ID = -1 THEN 1 ELSE NULL END) Negative_One,
        COUNT(CASE WHEN post_ID = 0 THEN 1 ELSE NULL END) Zero,
        COUNT(CASE WHEN post_ID > 0 THEN 1 ELSE NULL END) Greater_Zero
FROM tableName
GROUP BY url_host

SQLFiddleデモ

于 2012-09-29T11:31:34.080 に答える