我正在運行下面的查詢從現有表中獲取重複的記錄。下面是我在做查找重複記錄(電話)從兩個表mysql選擇查詢
- 上傳CSV
- 加載數據到臨時表
- 書面查詢檢查表通過加入臨時表和當前表中已存在具有相同的電話號碼重複記錄的過程。
我的查詢在當前表格中工作正常,最多100,000條記錄,但當前表中的實時系統數據多於10,000,000條,因此查詢輸出超時。
我的查詢是
select
tempTbl.id + 1 as SrNo,
`tempTbl`.`phone` as `phone`,
( CASE WHEN count(panelists.id) > 1 THEN
CONCAT(CONCAT('Phone Already Exist with Panelist ID ', panelists.id
,' and Duplidate counts is ',count('panelists.id'))
ELSE
CONCAT('Phone Already Exist with Panelist ID ',' ',panelists.id)
END
) AS reason from `panelists` as `panelists`
inner join `temp` as `tempTbl` on `panelists`.`phone` = `tempTbl`.`phone`
where `panelists`.`panel_id` = ? group by `tempTbl`.`phone`
having tempTbl.phone != ''
我會感激,如果任何幫助的建議,以優化我的查詢。提前致謝。
爲什麼你有寫查詢的查詢?除非您執行它,否則該字符串不會執行任何操作。 – tadman
我在我的代碼中執行這個查詢,但輸出是超時的 – Dnyanesh