|
分類:[.NET 全般]
以下のように SQL を作ってみたのですが 思うように動作しません。
DECLARE @Table1 TABLE ( SName varchar(20) NOT NULL ) INSERT INTO @Table1 SELECT 'B'
DECLARE @Table2 TABLE ( SName varchar(20) NOT NULL ) INSERT INTO @Table2 SELECT 'A' UNION SELECT 'B' UNION SELECT 'C' UNION SELECT 'D'
SELECT * FROM @Table2 AS T2 WHERE EXISTS ( SELECT COUNT(*) FROM ( SELECT SName FROM @Table1 ) AS t1 WHERE T1.SName = T2.Sname )
共通しているのは B だけなので B だけ出力されると思ったのですが
結果は A, B, C, D すべて出てきます。
最終的には以下のようにして使うつもりです。 どうすればよいのでしょうか?
DELETE @Table2 WHERE EXISTS ( 〜同上〜 )
|