Mysql SQL删除命令

Mysql SQL删除命令,mysql,sql,Mysql,Sql,我试图删除一个连接表,该表在表lif_bookhascategory中具有相同的lbhc_lb_sku,在表lif_books中具有相同的lb_sku。我不能删除它 下面是我的SQL命令: DeleteCommand="DELETE FROM lif_books FROM lif_books CROSS JOIN lif_bookshascategory WHERE (lif_books.lb_sku = @lb_sku) AND (lif_bookhascategory.lbhc_lb_sku

我试图删除一个连接表,该表在表lif_bookhascategory中具有相同的lbhc_lb_sku,在表lif_books中具有相同的lb_sku。我不能删除它

下面是我的SQL命令:

DeleteCommand="DELETE FROM lif_books FROM lif_books CROSS JOIN lif_bookshascategory WHERE (lif_books.lb_sku = @lb_sku) AND (lif_bookhascategory.lbhc_lb_sku = @lb_sku)">
这将返回:

Incorrect syntax near the keyword 'INNER'. 

我刚刚在我自己的数据库上测试了这个,它可以工作

DELETE lif_bookshascategory, lif_books
FROM lif_bookshascategory
INNER JOIN lif_books
WHERE lbhc_lb_sku = lb_sku

我刚刚在我自己的数据库上测试了这个,它可以工作

DELETE lif_bookshascategory, lif_books
FROM lif_bookshascategory
INNER JOIN lif_books
WHERE lbhc_lb_sku = lb_sku
这应该起作用:

DELETE lif_bookshascategory, lif_books
FROM lif_bookshascategory
INNER JOIN lif_books 
  ON lif_bookshascategory.lbhc_lb_sku = lif_books.lb_sku

这应该可以:

DELETE lif_bookshascategory, lif_books
FROM lif_bookshascategory
INNER JOIN lif_books 
  ON lif_bookshascategory.lbhc_lb_sku = lif_books.lb_sku

SQL规范没有正式规定在操作查询(插入、更新或删除)中使用联接。在这种情况下,使用更通用的格式更简单:

Delete lif_books
Where lb_sku = @lb_sku
    And Exists  (
                Select 1
                From lif_bookhascategory
                Where lbhc_lb_sku = @lb_sku
                )

SQL规范没有正式规定在操作查询(插入、更新或删除)中使用联接。在这种情况下,使用更通用的格式更简单:

Delete lif_books
Where lb_sku = @lb_sku
    And Exists  (
                Select 1
                From lif_bookhascategory
                Where lbhc_lb_sku = @lb_sku
                )

你能给出你想要执行的动作的更多细节吗?谢谢。我试图删除一个连接表,该表在表lif\U bookhascategory中具有相同的lbhc\U lb\U sku,在表lif\U books中具有相同的lbhc\U sku。您能否提供有关要执行的操作的更多详细信息?谢谢。我尝试删除了一个表lif_bookscategory中lbhc_lb_sku与表lif_bookscategory中lb_sku相同的联接表。我有两个表lif_bookscategoy.lbhc_lb_sku与表lif_bookscategoy.lb_sku与表lif_bookscategoy.lbhc_lb_sku与表lif_bookscategoy.lb_sku@SilverFang:您正在使用MySQL吗?我在MySQL上测试了一个类似的语句“deleteTest1,test2 from test1 internal join test2 on id1=id2;”“你在用MySQL吗?”@SilverFang:你在用MySQL吗?我在MySQL上测试了一个类似的语句“deleteTest1,test2 from test1 internal join test2 on id1=id2;”它是有效的。