为什么我会收到错误:
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'IF EXISTS(SELECT id FROM mytable WHERE id = '1')' at line 1
查询:
IF EXISTS(SELECT id FROM mytable WHERE id = '1')
由于
答案 0 :(得分:6)
IF EXISTS
仅适用于存储过程。在存储过程之外,IF()
是一个带有3个参数的函数。正确的用法是
SELECT IF(EXISTS(SELECT `column` FROM `table` WHERE `id` = `1`), 1, 0);
答案 1 :(得分:0)
尝试使用
Declare @ID Integer
Select @ID=id From mytable where id=1
IF @ID is not null OR IF @ID > 0
Begin
....
End
答案 2 :(得分:0)
现在不在MySQL机器上,但它看起来像是因为语句不完整,你需要告诉它如果id存在该怎么办。
如果EXISTS(...)做某事
答案 3 :(得分:0)
IF EXISTS
在MySQL中没有任何意义。
有关用法,请参阅MySQL文档中的subqueries with EXISTS or NOT EXISTS。
基本上,您需要在语句中使用它,而不仅仅是逻辑块