错误#1064 - MySQL子查询

时间:2017-02-26 22:35:59

标签: mysql join subquery

我正在阅读Paul DuBois的MySQL,我正在准确地了解如何进行子查询。我不知道我的查询逻辑是否正确,但我想我的语法是正确的。

无论如何,我一直收到这个错误:

  

1064 - 您的SQL语法出错;查看与您的MySQL服务器版本相对应的手册,以便在' WHERE userID =附近使用正确的语法(SELECT userID FROM usuarios WHERE deprecated_userName =' webmast' at line 2

对于此查询:

INSERT INTO cursosUsuarios (deprecated_cursoID, userID) VALUES (4255, 1)
WHERE userID = (SELECT userID FROM usuarios WHERE deprecated_userName = 'webmaster');

我有什么非常明显的遗失吗?

1 个答案:

答案 0 :(得分:1)

普通insert语句没有where子句。 Insert ... select ...语句可能在选择部分中有一个。

我认为您希望将webmaster用户注册到课程中。在这种情况下我会使用insert ... select ...

INSERT INTO cursosUsuarios (deprecated_cursoID, userID)
SELECT 4255, userID
FROM usuarios
WHERE deprecated_userName = 'webmaster'