3

これを取るクエリを作成する方法はありますか:

Id | action | object 
-------------
1 | view | article1 
2 | view | article2 
3 | view | article1 
4 | order | article1 
5 | order | article1 
6 | order | article3 

これを生成します:

name     | views | orders
----------------------
article1 |   2   |   2
article2 |   1   |   0
article3 |   0   |   1

1 つの解決策は、2 つの選択を使用し、後でそれらをコードで結合することです。より良いものはありますか?

よろしく && tia

ノワール

4

1 に答える 1

3

多分このようなもの:

SELECT
    SUM(CASE WHEN Table1.action='view' THEN 1 ELSE 0 END) AS views,
    SUM(CASE WHEN Table1.action='order' THEN 1 ELSE 0 END) AS orders,
    Table1.object 
FROM
    Table1
GROUP BY
    Table1.object 
于 2012-04-25T07:42:33.037 に答える