我從多個CSV文件導入了該數據庫以保留列名,並且還有更多的CSV文件仍然需要上傳,因此無法添加唯一的ID。刪除表中沒有ID的多個條目
查詢應該是這樣的:
delete from table1
USING table1, table1 as vtable
WHERE (NOT table1.ID=vtable.ID)
AND (table1.field_name=vtable.field_name)
如果我寫這樣一切查詢將被刪除:
delete from table1
USING table1, table1 as vtable
WHERE
AND (table1.field_name1=vtable.field_name1) AND (table1.field_name2=vtable.field_name2)
AND (table1.field_name3=vtable.field_name3) AND (table1.field_name4=vtable.field_name4)
請幫我找到的解決方案,從表中刪除,其中場name1,2 ,3,4是相同的,沒有任何明確的ID。
好,如果你沒有一個唯一的ID爲每個記錄如何確定兩個記錄是相同或不同?你的疑問根本沒有意義!是不是表1的別名?您指的是兩個查詢中的同一列。爲什麼每個添加到表格的記錄都不能有一個自動增量ID? –
我從多個CSV文件導入數據庫到列名必須維護,並從更多的CSV文件仍然需要上傳,所以不能添加一個唯一的ID – dissectorz
我不建議改變列名稱,你可以簡單地添加一個PK列到你的表。如果兩個CSV文件包含相同的記錄會怎麼樣?我認爲這是你在這裏試圖解決的問題。如果您想要在沒有唯一ID的情況下執行此操作,則必須考慮確定兩條記錄相同或不相同的條件(即,您需要比較列的值,以確定表中的兩條記錄是相同還是某些方式可比),你不能根據列名刪除。 –