downvoteの値が-1で0でないため、とのdownvotesの合計を集計しようとすると、この問題が認識されました。これはSQL sum()関数を使用するときに問題が発生します。例えば、私が最初にオフ推測SQLは1と0の値を使って(+1)と(-1)投票を合計する方法は?
vote_id vote
1 0
2 1
3 1
SELECT sum(vote) //output is 2
vote_id vote
1 -1
2 1
3 1
SELECT sum(vote) //output is 1, which is the desired output
は、私の質問は、理にかなってさえ0, null, and 1
を使用しているのですか?または、私はちょうど-1, 0, 1
を使うべきですか?
いずれにせよ、私は、0, null, and 1
を使用して、上下の票を合計するためにSQLクエリがどのように見えるかを知ることに興味があります。
は、なぜあなたは* * -1、0、1を使用していないだろうか? – JJJ
こんにちは@Juhana、私は私の頭の中で物事を単純にしたいが、同時にベストプラクティスを使用したいからだと思う。 0と1は他のすべてに対して標準的なので、この場合は例外を作成することに懸念がありました。 –
これは、投票が肯定的であるか否定的であるかを判断するブール値でなければならないのですか?あたかも投票がないかのように、記録はありません。または私は何かを逃していますか? –