我有一個查詢在我添加存在條件之前工作。在添加存在的條件後,它將永遠進入循環,並且不會返回任何結果。我認爲主要原因是對每一行的記錄進行全面掃描。任何人都可以請告訴如何避免這種情況。下面的查詢是我試圖實現的一個例子。避免完整掃描子查詢
基本上,條件是一輛汽車可以有很多零件,如果任何一個零件更新了該車的變化,我們想要拿起所有零件。該部分有詳細信息表,我想查看詳細信息表的更新。
select c.id, p.id
from car c join part p on p.car_id=c.id
where exists (
select 1
from part p join pdetl pd on p.id=pd.part_id
where p.car_id=c.id and pd.updated_on > ?
)
我認爲無限循環的主要原因是在主查詢中PART是P,在子查詢PART中也是P ...重命名子查詢和標準以及P.car_id = P2.car_Id – maSTAShuFu