sql 5.6.17上的SQL语法错误

时间:2014-07-04 22:49:45

标签: mysql sql

IF NOT EXISTS ( SELECT name FROM person)
     SELECT id FROM connection

我得到: 1064 - 您的SQL语法出错;查看与您的MySQL服务器版本对应的手册,以便在第1行“IF NOT EXISTS(SELECT name FROM person)SELECT id FROM connection”附近使用正确的语法

怎么了?

我也试过

IF NOT EXISTS(SELECT name FROM person)
BEGIN
SELECT id FROM connection
END

并得到同样的错误。

2 个答案:

答案 0 :(得分:0)

IF只能在存储过程中使用。要在常规查询中执行此操作,请执行以下操作:

SELECT id FROM connection
WHERE NOT EXISTS (SELECT name FROM person)

然而,我想知道这是否真的是你想要的。如果person为空,这将返回所有连接ID,如果person表有任何行,则返回任何内容。它没有将两个表中的行相互关联 - 您可以使用JOIN或相关的子查询。

答案 1 :(得分:0)

那不是正确的方法。而是尝试

SELECT id FROM connection
WHERE NOT EXISTS ( SELECT name FROM person)