Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 为什么使用内部联接的SQL删除查询不起作用?_Mysql_Sql_Database_Sql Delete_Rdbms - Fatal编程技术网

Mysql 为什么使用内部联接的SQL删除查询不起作用?

Mysql 为什么使用内部联接的SQL删除查询不起作用?,mysql,sql,database,sql-delete,rdbms,Mysql,Sql,Database,Sql Delete,Rdbms,我正在尝试执行这个SQL DELETE查询,它涉及一些内部连接。我只想从名为Market\u Commodity\u Price\u Series的主表中删除。我正在使用MySql 这是我的疑问: DELETE FROM Market_Commodity_Price_Series AS MCPS INNER JOIN MarketDetails_CommodityDetails AS MDCD ON MCPS.market_commodity_details_id = MDCD.id

我正在尝试执行这个SQL DELETE查询,它涉及一些内部连接。我只想从名为Market\u Commodity\u Price\u Series的主表中删除。我正在使用MySql

这是我的疑问:

DELETE
FROM Market_Commodity_Price_Series AS MCPS
INNER JOIN MarketDetails_CommodityDetails AS MDCD
      ON MCPS.market_commodity_details_id = MDCD.id
INNER JOIN MarketDetails AS MD
      ON MDCD.market_details_id = MD.id
WHERE MD.market_name = "Kimironko"
问题是,执行此查询时,我会获得以下错误消息:

42000您的SQL语法有错误;检查与您的MySQL服务器版本对应的手册,以了解要使用的正确语法 近“MCPS内部加入市场详细信息”\u商品详细信息,如MDCD上的 2号线MCPS市场公司

奇怪的是,这个查询的SELECT*版本工作得很好,我获得了我期望的记录

我想使用delete版本仅从from子句指定的主查询中删除这些记录


怎么了?我错过了什么?如何修复此错误?

您需要指定要从哪个表中删除记录: 请注意删除后的表别名

DELETE MCPS
FROM Market_Commodity_Price_Series AS MCPS
INNER JOIN MarketDetails_CommodityDetails AS MDCD
      ON MCPS.market_commodity_details_id = MDCD.id
INNER JOIN MarketDetails AS MD
      ON MDCD.market_details_id = MD.id
WHERE MD.market_name = "Kimironko"