Время выполнения запроса в MySQL
2064
2
def
experienced
В чем суть...
Существуют две таблицы:
Количество записей в Table1 — 23 миллиона, в Table2 - 230 тысяч (будет увеличиваться).
Задача: неоходимо выбрать все записи из Table1, где Table1.B=Table2.D.
На что был составлен запрос:
Но этот запрос выполняется около сорока минут.
Вопрос в следующем: можно ли как-то увеличить производительность этого запроса?
Или построить другой запрос, который укладывался бы в 10 минут.
Существуют две таблицы:
Table1:
Field Type Null Key Default Extra
A int(11) YES MUL NULL
B int(11) YES MUL NULL
C int(11) YES MUL NULL
Table2:Таблица Table2 заполняется PHP-скриптом и содержит неповторяемые значения.
Field Type Null Key Default Extra
D int(11) PRI 0
Количество записей в Table1 — 23 миллиона, в Table2 - 230 тысяч (будет увеличиваться).
Задача: неоходимо выбрать все записи из Table1, где Table1.B=Table2.D.
На что был составлен запрос:
SELECT t1.A, t1.C FROM `Table1` as t1, `Table2` as t2 WHERE t1.B=t2.D
Но этот запрос выполняется около сорока минут.
Вопрос в следующем: можно ли как-то увеличить производительность этого запроса?
Или построить другой запрос, который укладывался бы в 10 минут.
A int(11) YES MUL NULLMUL - это multi-column ключ? Если да, как он создан (синтаксис CREATE TABLE)?
MUL - это multi-column ключ? Если да, как он создан (синтаксис CREATE TABLE)?Простой индекс по полю построен.
Вопрос снят.
Кому интересно решение - сюда