-1

下面的 SQL 查询一直很适合我:

DELETE FROM zNMall1r.* WHERE zNMall1r.Phone = DoNotCall.Phone

当我尝试执行时,它返回错误 1054:

17:51:01    DELETE zNMall1r.* FROM zNMall1r WHERE zNMall1r.Phone = Phone.DoNotCall  
Error Code: 1054. Unknown column 'Phone.DoNotCall' in 'where clause'    0.078 sec

有人对此有想法吗?

4

2 回答 2

0

错误消息非常清楚,它表示您的子句DoNotCall.Phone中有一个未知列 ( ) 。WHERE

这是在另一张桌子上,你想JOIN在桌子上吗?

如果是这样,那么您将需要执行以下操作:

DELETE z
FROM zNMall1r z
INNER JOIN DoNotcall o
   ON z.yourIdcol = o.yourIdCol
WHERE z.Phone = o.Phone
于 2012-07-27T22:00:49.183 回答
0

您尚未加入名为 的表DoNotcall。MySQL 不会搜索其所有数据库来尝试找到该列,因此您会收到此错误。

于 2012-07-27T22:01:12.153 回答