我正在使用以下查詢來刪除除我的表之外的多個記錄。它適用於小型表格,但當我使用具有> 130000條記錄的表格嘗試時,它會卡住。事情是,我甚至沒有得到一個錯誤。 phpMyAdmin的只是卡和查詢(「載入中...黃線)基本需要永遠從非常大的表中刪除多個記錄(查詢需要永久)
我的表結構
person_id (AI & PK)
person_name (I want to delete multiple person_name records except one)
查詢
DELETE t2
FROM `person` t1
INNER JOIN `person` t2
ON t1.person_name = t2.person_name
AND t1.person_id < t2.person_id;
更新:我沒有一個我的三個表(person_job & person_image,book_who_wrote_it)包含來自person表(person_id)的外鍵
不,我不知道在人員表上有一個索引。但是我的其他三個表(person_job&person_image,book_who_wrote_it)包含person表(person_id)中的外鍵。 – salep
@salep。 。 。該索引將幫助你的查詢很多。 –
從OP看來,他想要'person_id'的最大值(我可能是錯的 - 或者也許沒關係?) –