0
これは信じられないほど単純なようですが、次のクエリが間違った数値を返す理由を理解できません。不適切な金額を返すSQLのSUM
私はデータセットをExcelに入れて、検証するためだけに計算を行いました。 m1の合計は36785です。領域900と995を削除すると、18653になります。このクエリを見ると、欠陥は何ですか?私はそれをオフ()を残す場合は、以下のように、計算値は1716093.クエリです36785.
select sum(m1)
from dbo.sizeclassreportgov
where own='10' and (area !='900' or area != '995');
なぜエリア!= '900' またはエリア!= '995' は常に真と評価されますか? –
助けてくれてありがとう。それは完璧に働いた。 –
これは 'OR'条件であるため、いずれかの条件が真の評価のために行います。 '' 900 '!=' 995''なので '' 900''はまだtrueを返すでしょう。あなたがカッコを取り除いて、単に「OR」ではなく「AND」にした場合、それも機能します。 –