Sql 是否存在或存在?

Sql 是否存在或存在?,sql,sql-server,conditional,exists,Sql,Sql Server,Conditional,Exists,是否可以在单个IFSQL语句中测试两个存在的条件?我试过以下方法 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 (

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

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' 

很好,请注意唯一更改的是
存在
而不是
存在
。这方面的计划可能是一个
联合所有
,如果第一个测试结果为真,则短路。

您在测试结束时错过了一个S


EXISTS,not EXIST

您也可以编写IN语句

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

我得到的代码是“在预期条件的上下文中指定的非布尔类型的表达式,靠近“IF.”。@user1142433-请发布您正在使用的确切代码。这个答案中的代码没有给出那个错误。道歉。您的解决方案非常有效。我的存储过程中还有一个错误。@user1142433-您能发布完整的查询吗?这对这个问题没有帮助,因为这个问题解决了两个不同表之间的IF-EXISTS语句(请注意提供的代码段中的tblOne和tblTwo)。