Этот запрос выполняется медленно и замедляется по мере роста таблицы. Может ли кто-нибудь найти способ увеличить скорость?Увеличение скорости подзапроса
Предполагается заполнить tblUser_Lesson идентификаторами tblUser и tblLesson, гарантируя, что идентификаторы не существуют в таблице перед вставкой.
У меня есть указатель на tblUser.name и tblLesson.name, но это, похоже, не имеет значения.
INSERT INTO tblUser_Lesson (user, lesson)
SELECT userId, lessonId
FROM
(
SELECT tblUser.id userId, tblLesson.id lessonId
FROM tblUser,
tblLesson
WHERE tblUser.name=?
AND tblLesson.name=?
) tmp
WHERE NOT EXISTS (SELECT user
FROM tblUser_Lesson tmp1
WHERE tmp1.user = tmp.userId
AND tmp1.lesson = tmp.tblLesson)
Нет JOIN состояние? Очень неожиданно. – jarlh
Простой JOIN ускорит его на миллион ... – Veljko89
Что именно вы пытаетесь выполнить с помощью этого 'INSERT'? –