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)。