1

私は次のような2つのselectステートメントを持っています

Select author_id, count(text) from posts group by author_id

select author_id, count(text) from posts where postcounter =1 group by author_id

1つのクエリで2つのステートメントを組み合わせる方法はありますか?結果の長さは異なるため、2番目の結果セットにいくつかの0を挿入する必要があります。

助けてくれてありがとう

よろしく、シモーネ

4

3 に答える 3

1

これはあなたが探しているものですか?

select author_id, 
   sum(case when postcounter = 1 then 1 else 0 end) count1, 
   sum(case when postcounter <> 1 then 1 else 0 end) count2,
   count(text) allcount
from posts  
group by author_id
于 2013-02-15T22:28:23.260 に答える
1

以下を使用して、単一のクエリでこれを取得できるはずです。

Select author_id, 
  count(text) TextCount,
  count(case when postcounter=1 then text end) PostCount
from posts 
group by author_id
于 2013-02-15T22:29:42.743 に答える
0

ユニオンオールステートメントを試すことができますか?

   SELECT `id`,sum(`count`) FROM (
Select  author_id as `id`, count(text) as `count` from posts group by author_id 
UNION ALL 
select author_id as `id`, count(text) as `count` from posts where postcounter =1 group by author_id
    )
于 2013-02-15T22:30:05.793 に答える