我正在使用mysql和php。我無法刪除任何記錄,即使記錄存在,以滿足在查詢中指定的條件,請大家幫忙找出問題, 我的查詢是其中嵌套查詢中的子句
表1(ID,LName的) 表2(ID,LName的)
delete from table1 where Lname in (select Lname from table2);
我正在使用mysql和php。我無法刪除任何記錄,即使記錄存在,以滿足在查詢中指定的條件,請大家幫忙找出問題, 我的查詢是其中嵌套查詢中的子句
表1(ID,LName的) 表2(ID,LName的)
delete from table1 where Lname in (select Lname from table2);
根據您在您的評論中提供的表結構,查詢應該是有點這樣的:
delete from table1
where name in
(select name
from table2)
但根據你的問題,看來你的表似乎沒有有一個名爲列「L-NAME」。
如果你的列名實際上是「L-NAME」,那麼查詢可以重新寫爲:
delete from table1
where Lname in
(select Lname
from table2)
請,請格外小心提表的結構,你必須張貼你的表的相應名稱和列和正確的拼寫。
它已被修改。 – Ajeet
delete from table1 where Lname in (select Lname from table2);
它爲我工作。也許有情況的問題,所以像這樣的
delete from table1 where upper(Lname) in (select upper(Lname) from table2);
嘗試另一種選擇是使用JOIN: -
DELETE table1
FROM table1
INNER JOIN table2
ON table1.Lname table2.Lname
,但原來的SQL應該工作
這不是一個好作風問SO中的問題。請顯示您的表格結構以及迄今爲止所做的工作。 –
我有兩個表table1(id,名稱)和table2(id,名稱),我想刪除table1中的記錄,如果它在table2中存在相同的名稱。 – Ajeet
請在您的評論中添加表格說明和其他詳細信息。 – Neels