У меня большая проблема с моим запросом к базе данных.SQL QUERY - UNION - несколько одинаковых таблиц занимают много времени
Я объяснил свою проблему, у меня есть 11 одинаковых таблиц (резервных копий). Таблицы точно такие же, и мне нужно извлечь данные из них, но это занимает очень много времени.
Я использую накидной запрос, как это:
select id, name, ... from table_1 WHERE (...)
UNION
select id, name, ... from table_3 WHERE (...)
UNION
select id, name, ... from table_2 WHERE (...)
... ORDER BY created DESC LIMIT 0,50
Но только запрос занимает около 16 секунд! База данных не имеет, что много данных, что она так долго ...
table_1 = 1.3k
table_2 = 17k
table_3 = 10k
table_4 = 10k
... = 10k
table_11= 140K
Можете ли вы мне помочь оптимизировать этот запрос? Большое спасибо!
Проблема, вероятно, в конце полного результата. Сколько данных вы вернетесь? –
Избегайте использования какого-либо внутреннего запроса, если вы используете. вместо этого используйте Join. – dhS