Ще трябва да предоставите плановете за обяснение, за да оцените по-добре защо единият се представя по-добре от другия. Но като цяло можете да получите по-добри или поне по-предвидими резултати за този тип заявка, като промените IN
състояние към EXISTS
вместо това условие:
select *
from data_table t1
where exists (select null
from id_table t2
where t2.oid = t1.oid
and (other conditions))