我的問題是我需要在任何時候從dest表獲取mel列上的重複條目。如何在Laravel中使用子查詢正確查詢查詢
我試過這麼多的事情在Laravel這個翻譯查詢,但找不到辦法:
select id
from dest d,
(select mel from dest where stt = 0 group by mel having count(mel) > 1) sr
where d.mel = sr.mel
我試圖創建一個視圖
create DEFINER = user view dest_doubles
如選擇ID從dest d(從stt = 0組中選擇mel from mel有count(mel)> 1)sr其中d.mel = sr.mel
select id from dest_doubles
查詢永遠持續,而
select id from dest d, (select mel from dest where stt = 0 group by
mel having count(mel) > 1) sr where d.mel = sr.mel
響應在3分鐘內
我在Laravel命令嘗試這樣做:
\DB::select(\DB::raw('dest.id'))
->from(\DB::raw('dest, (select mel from dest where stt = 0 group by mel having count(mel) > 1) as sr'))
->whereRaw('dest.mel = sr.mel')
->chunk(10000, function ($doubles) {
});
而無法執行:
[PDOException]
SQLSTATE [42000]:語法錯誤或訪問衝突:1064您的SQL語法錯誤 ;檢查對應於您 MySQL服務器版本在 線1
使用近「dest.id」正確的語法手冊所以我不知道該怎麼塊包含在Laravel一個子查詢,
謝謝你幫
我應該精確說明dest是一個有800萬行的大表格 –