SQLServer2005 Express にて次のようなSQLをVB.NET2005で発行しようとしたらうまくいきません
SELECT CustomerID,CustomerName FROM T_Customer WHERE Kana LIKE N'カ%' OR Kana LIKE N'キ%' OR Kana LIKE N'ク%' OR Kana LIKE N'ケ%' OR Kana LIKE N'コ%' AND not exists(select 1 from T_ABC where T_Customer.CustomerID=T_ABC.CustomerID
目的はT_ABCテーブルにあるデータ以外のデータの中からカ行のKana読みの
データのみを抽出するものです
SQL初学者でお恥ずかしい限りですがよろしくご教授ください
ANDはORよりも優先されるので、括弧でくくる必要がありますね。
SELECT CustomerID,CustomerName FROM T_Customer
WHERE (Kana LIKE N'カ%' OR Kana LIKE N'キ%' OR Kana LIKE N'ク%' OR Kana LIKE N'ケ%' OR Kana LIKE N'コ%')
AND not exists
(select 1 from T_ABC
where T_Customer.CustomerID=T_ABC.CustomerID)
お礼
早速のアドバイスありがとうございます 上記の通り実行したら期待通りの動作をしました 演算子の優先順位や括弧など基本的な文法について 今一度再学習してみます 情報の洪水で溺れていました(笑) ありがとうございました