select mobile_no,mobile_source_type_id,voter_id,district_id,
constituency_id,tehsil_id,local_election_body_id,panchayat_id,
booth_id,is_dnd
from mobile_numbers2
where mobile_no not in (
SELECT mobile_number
from mobile_numbers
)
Для этого запроса требуется больше времени.Как оптимизировать этот запрос
Используя запрос Explain. Он показывает ниже сообщение, Как оптимизировать этот запрос.
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY mobile_numbers2 ALL NULL NULL NULL NULL 7783355 Using where
2 DEPENDENT SUBQUERY mobile_numbers index idx_mobile_numbers_mobile_number,idx_mobile_no idx_mobile_numbers_mobile_number 48 NULL 49256693 Using where; Using index
Добавить индекс в поле mobile_numbers2.mobile_no. Вы также можете рассмотреть вопрос о переписывании запроса в качестве соединения, а не в подзапросе. – Shadow
Вы пытались использовать JOIN вместо размещения подзапроса в предложении WHERE? – DouglasCamargo