आप kickscooter_control_units
. में शामिल हो सकते हैं आपके subquery
. पर उपयोग exists
IN के बजाय कीवर्ड।
select *
from rents r
where
exists
(select 1
from support_works sw
join kickscooters k on k.serial_number = sw.serial_number
join kickscooter_control_units kcu on kcu.kickscooter_id = k.id and kcu.particle_product_id in (9358, 9383)
where
sw.work_type = 'deploy' and
(sw.updated_at between '2019-11-01 02:00:00' and '2019-11-01 10:00:00'))
ऐसा लगता है कि आपके परिदृश्य के आधार पर आप ID
. को फ़िल्टर कर रहे हैं . exists
केवल तभी लागू होता है जब आप जांचना चाहते हैं कि कुछ subquery
. है या नहीं मान शामिल हैं।
select *
from rents r
where
r.kickscooter_id in
(select k.id
from support_works sw
join kickscooters k on k.serial_number = sw.serial_number
join kickscooter_control_units kcu on kcu.kickscooter_id = k.id and kcu.particle_product_id in (9358, 9383)
where
sw.work_type = 'deploy' and
(sw.updated_at between '2019-11-01 02:00:00' and '2019-11-01 10:00:00'))