0

私はテーブルResponsesとテーブルを持っていますVotesVotesテーブルには列があり、特定の回答に対して人々が賛成票を投じるか反対票を投じるかによって、またはのvote_valueいずれかになります。投票の合計で回答を並べ替える方法を知りたいです。1-1

結合を行い、単純に (降順で) 並べ替える場合の問題SUM(vote.vote_value) as scoreは、一部の応答には投票がないことです。そのため、score-1 の応答は、投票のない応答よりも高くなります (スコアは0 本当に)。

SQL でこれを行う方法がない場合は、アプリケーション コードで自分で並べ替えを行うことができると思います。

4

1 に答える 1

2

SUM が NULL を返す場合、COALESCEを使用して値を選択します。

COALESCE(SUM(vote.vote_value), 0) AS score
于 2012-06-18T07:18:42.717 に答える