У меня возникли проблемы с использованием подзапроса для предложения IN запроса.Жесткое кодирование значений IN .. позволяет выполнить запрос быстро, но использование подзапроса замедляет все.Есть ли способ ускорить этот запрос?
SELECT col1, col2, col3 FROM table1
WHERE ...
and col1 in (SELECT col1 FROM table2)
...
* Значения для предложения IN будут представлять собой список строк
SELECT col1, col2, col3 FROM table1
WHERE ...
and col1 in ('str1', 'str2', 'str3', ...)
...
Вышеприведенное работает нормально.
РЕДАКТИРОВАТЬ: я думаю, что я упрощаю проблему.Запрос, который я пытаюсь выполнить, выглядит следующим образом:
SELECT col1, col2, col3, ...
FROM table1 t1, table2 t2
WHERE t1.col1 IN (SELECT col FROM table3)
and t1.col2 < 50
and t2.col3 = t1.col3
...