我尝试使用MySQL:

DELETE FROM `contact_hostcommands_relation` AS `ContactHostCommand` WHERE (`ContactHostCommand`.`chr_id` = 999999) LIMIT 1

我得到这个:
#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 'WHERE (`ContactHostCommand`.`chr_id` = 999999) LIMIT 1' at line 1

注意:此查询是自动生成的,条件基于表别名。

为什么会出现此错误?

有什么方法可以在where子句中使用表别名?

这是MySQL特定的吗?

最佳答案

您可以这样使用SQL:

DELETE FROM ContactHostCommand
USING `contact_hostcommands_relation` AS ContactHostCommand
WHERE (ContactHostCommand.`chr_id` = 999999)
LIMIT 1

关于mysql - 从 `table`中删除AS `alias`…在哪里 `alias` .`column`…为什么语法错误?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10484532/

10-09 07:25