1

という名前のテーブルに4つの列がありますarticles:created_at、articles、keyword、およびcategory

データを分析するために次のクエリがあります。

SELECT DATE(`created_at`) AS date, COUNT(1) AS articles 
FROM articles 
WHERE `keyword`='keyword1' 
GROUP BY DATE(`created_at`)

これは、1 つのキーワードに対する 1 日あたりの記事の総数を返します。

cat1合計を取得してから、これを分類し、記事を、cat2またはcat3キーワードごとに分類したいと思います。したがって、次のようなテーブルを指定します。

|date|keyword|articles|cat1|cat2|cat3| 

私はこれを正しく理解できないようですので、助けていただければ幸いです!

4

1 に答える 1

2
select 
DATE(`created_at`),
keyword,
count(*) as TotalCount,
SUM (case when Category = Cat1 then 1 else 0 end) as Cat1Count,
SUM (case when Category = Cat2 then 1 else 0 end) as Cat2Count,
SUM (case when Category = Cat3 then 1 else 0 end) as Cat3Count

from articles
group by DATE(`created_at`), keyword
order by DATE(`created_at`), keyword
于 2013-01-25T11:54:31.050 に答える