If Exist or Exists?



是否可以在单个IF SQL语句中测试两个EXISTS条件?我试过以下方法。

IF EXIST (SELECT * FROM tblOne WHERE field1 = @parm1 AND field2 = @parm2) 
   OR 
   EXIST (SELECT * FROM tblTwo WHERE field1 = @parm5 AND field2 = @parm3) 

我试过在那里添加额外的IF和括号,但无济于事。

你能告诉我正确的语法吗?

SQL Server

IF EXISTS (SELECT *
           FROM   tblOne
           WHERE  field1 = @parm1
                  AND field2 = @parm2)
    OR EXISTS (SELECT *
               FROM   tblTwo
               WHERE  field1 = @parm5
                      AND field2 = @parm3)
  PRINT 'YES' 

很好,注意唯一改变的是EXISTS而不是EXIST。如果第一个测试是正确的,这个计划可能是一个UNION ALL短路。

您在EXIST

结尾漏掉了一个S

EXISTS, not EXIST

您也可以编写IN语句

IF EXISTS (SELECT * FROM tblOne WHERE field1 = @parm1 AND field2 IN (@parm2,@parm3)

相关内容

  • 没有找到相关文章

最新更新