• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:SQL)

区分2、3、4のデータを抽出しないSQL文を教えてください

このQ&Aのポイント
  • SQLSERVER2000を使用している際、指定のテーブルから区分2、3、4のデータを抽出しないSQL文を教えてください。
  • 指定のテーブル内には、名称と区分のカラムがあります。区分が2、3、4の場合は抽出しないようにしたいのです。
  • テーブル内のデータを区分によって抽出したい場合、区分が2、3、4のデータを除外するSQL文を教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • yamada_g
  • ベストアンサー率68% (258/374)
回答No.3

名称でグルーピングして、区分が2,3,4のレコード件数が0のものを取得する。 select 名称 from テーブル group by 名称 having count(case when 区分 in (2,3,4) then 1 else null end) = 0; もしくはnot existsを使って select distinct 名称 from テーブル a where not exists (select * from テーブル b where a.名称 = b.名称 and b.区分 in (2,3,4)) and 区分 not in (2,3,4) --なくても結果は同じです ; とかでも。

Reptilez
質問者

お礼

ありがとうございます。 無事、解決いたしました!!

その他の回答 (2)

  • todo36
  • ベストアンサー率58% (728/1234)
回答No.2

SELECT x.名称 FROM テーブル x WHERE NOT x.名称 IN (   SELECT y.名称   FROM テーブル y   WHERE y.区分 IN (2,3,4)   GROUP BY y.名称 ) GROUP BY x.名称

Reptilez
質問者

お礼

ありがとうございます。 無事、解決いたしました!!

回答No.1

ヒント select distinct 名称 from テーブル where 区分 in (2,3,4)

Reptilez
質問者

お礼

ありがとうございます。 無事、解決いたしました!!