2017-12-05 18 views
1

指定された年齢範囲のエントリをカウントするテーブルを作成しようとしています。私はAAAAAA、BBBBBB、およびその他の間でソートしようとしています。ここで、otherはデータベース内のAでもBでもないエントリの数です。私は構文で "is not"ステートメントを書く方法を探しています。これは可能ですか?SQL Sum is notステートメントを含むケース

SELECT AgeRange 
,SUM(CASE WHEN OP ='A' THEN 1 ELSE 0 END) AS 'AAAAAA' 
,SUM(CASE WHEN OP ='B' THEN 1 ELSE 0 END) AS 'BBBBBB' 
,Sum(Case WHEN OP <> ('A','B') THEN 1 ELSE 0 END) AS 'OTHER' 
FROM ;ALKSDJF.A;LKSDFJ.A;SLDKFJ (NOLOCK) 
+1

ここでは '<>'の代わりに 'not in'を使用します。 –

答えて

1

試してみてください。

SELECT AgeRange, 
SUM(CASE WHEN OP ='A' THEN 1 ELSE 0 END) AS 'AAAAAA', 
SUM(CASE WHEN OP ='B' THEN 1 ELSE 0 END) AS 'BBBBBB', 
SUM(Case WHEN OP NOT IN ('A','B') THEN 1 ELSE 0 END) AS 'OTHER' 
FROM YOUR_TABLE 
GROUP BY AgeRange; 

ないあなたはFROM句で持っているものを確認してください。私はを使って、私はRとDが何であるか分からなかった。

+0

チャームのように働いた!私はちょうどこのすべてのカンマを忘れたように見えます!本当にありがとう! –

0

論理否定は、ほとんどの場合、可能ではないとは考えられません。

  • A=B否定A<>Bある、またはNOT (A=B)
  • A OR B否定は否定NOT (A OR B)NOT A AND NOT B
  • A IN (B, C, D)あるA NOT IN (B, C, D)

です...とNOT INNOT (A IN (B,C,D))を使用することができる演算子ではなかった場合でも、 。

関連する問題