3

カウントで抑制されているcounta を select 句に含めることは可能ですか? 句を無視するgroup by必要がありますcountgroup by

合計エントリをカウントしているこのクエリを取得しました。クエリは一般的に生成されるため、サブクエリなどの包括的な変更を行うことはできません.

特定のケースでは、正しい行を取得するために group by が必要であり、このため group by を削除できません。

SELECT count(dv.id) num
FROM `data_voucher` dv
LEFT JOIN `data_voucher_enclosure` de ON de.data_voucher_id=dv.id
WHERE IF(de.id IS NULL,0,1)=0
GROUP BY dv.id
4

2 に答える 2

4

で抑制されている をcountselect 句に含めることは可能ですか? 句を無視する必要がありますgroup bycountcountgroup by

さて、あなたの質問への答えは、group byステートメントを使用している間、すべての結果で機能する集計を作成できないということです。group by集計の動作を変更するグループを作成することが、 の全体的な目的です。

GROUP BY 句を使用すると、名前を付けた列のグループで (自然に) 集計が行われます。

このブログ投稿を参照してください。これは、このトピックに関して Google で見つけた最初の結果にすぎません。

クエリを再設計する必要があります。最も簡単な方法は、サブクエリを作成するか、ジョイントの地獄です。しかし、スキーマと、このクエリで何をしたいのかについての少しのコンテキストがなければ、機能する代替案を提供することはできません.

ハンマーを使ってネジを締めようとしているとしか言えません...

于 2013-06-09T17:07:27.820 に答える