我正在尝试运行这个MYSQL命令:
DELETE FROM hotel h
LEFT JOIN user_hotel uh ON h.hotel_id = uh.hotel_id
WHERE uh.user_hotel_id IS NULL
它返回此错误:
1064 - 您的SQL语法出错;检查手册 对应于您的MySQL服务器版本,以便使用正确的语法 'h LEFT JOIN user_hotel uh ON h.hotel_id = uh.hotel_id WHERE uh.user_hotel_id我在第1行
命令似乎不言自明,所以不确定我的错误。有什么想法吗?
答案 0 :(得分:2)
您缺少table_name要删除的那些
DELETE h FROM hotel h
LEFT JOIN user_hotel uh ON h.hotel_id = uh.hotel_id
WHERE uh.user_hotel_id IS NULL
答案 1 :(得分:1)
您需要提供要删除的表名称,如
DELETE h FROM hotel h
LEFT JOIN user_hotel uh ON h.hotel_id = uh.hotel_id
WHERE uh.user_hotel_id IS NULL
答案 2 :(得分:1)
DELETE h FROM hotel h
LEFT JOIN user_hotel uh ON h.hotel_id = uh.hotel_id
WHERE uh.user_hotel_id IS NULL
答案 3 :(得分:1)
#缺少什么删除。仅在没有连接
的情况下从表工作中删除DELETE T1, T2
FROM T1
INNER JOIN T2 ON T1.key = T2.key
WHERE condition
答案 4 :(得分:1)
在JOIN的情况下,您需要指定要应用DELETE的表名。 请参阅此link。
您需要编写如下的MySQl查询:
DELETE h,uh FROM hotel h
LEFT JOIN user_hotel uh ON h.hotel_id = uh.hotel_id
WHERE uh.user_hotel_id IS NULL
答案 5 :(得分:0)
查询:
DELETE column_name(which you want to delete) FROM hotel h
LEFT JOIN user_hotel uh ON h.hotel_id = uh.hotel_id
WHERE uh.user_hotel_id IS NULL