我正在使用mysql和php。即使存在满足查询中指定条件的记录,我也无法删除任何记录,请帮助识别问题, 我的查询是
表1(id,LName) 表2(ID,LName的)
delete from table1 where Lname in (select Lname from table2);
答案 0 :(得分:2)
delete from table1 where Lname in (select Lname from table2);
它为我工作。也许它有案例问题所以试试这个
delete from table1 where upper(Lname) in (select upper(Lname) from table2);
答案 1 :(得分:0)
根据您在评论中提供的表格结构,查询应该有点像这样:
delete from table1
where name in
(select name
from table2)
但是根据你的问题,你的表似乎没有一个名为'Lname'的列。
如果您的列名实际上是“Lname”,则可以将查询重写为:
delete from table1
where Lname in
(select Lname
from table2)
请特别注意提供表格结构,您必须张贴相应的表格和列名称,并正确拼写。
答案 2 :(得分:0)
另一种选择是使用JOIN: -
DELETE table1
FROM table1
INNER JOIN table2
ON table1.Lname table2.Lname
但您的原始SQL应该可以正常工作