需求描述
現在需要通過EXISTS中的語句來控制查詢結果是否存在
第一次實現SQL
SELECT 1 AS ID,SUM(1) FROM (SELECT ID,NAME FROM (VALUES(1,'AA'),(2,'BB')) AS B(ID,NAME)) WHERE EXISTS (SELECT 1 FROM SYSIBM.DUAL WHERE 1=2 )
查詢結果
查詢出來就發現會存在一條記錄
正確的寫法
SELECT * FROM (SELECT 1 AS ID,SUM(1) FROM (SELECT ID,NAME FROM (VALUES(1,'AA'),(2,'BB')) AS B(ID,NAME)) ) WHERE EXISTS (SELECT 1 FROM SYSIBM.DUAL WHERE 1=2 )
只有通過這樣才能 控制數據,當EXISTS為FLASE的時候,查詢為空。