powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Оптимизация Update
3 сообщений из 3, страница 1 из 1
Оптимизация Update
    #39411844
olimpset
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте. Есть таблица, примерно 5-10 млн записей. Какой из двух запросов будет быстрее и какой оптимальный?
Код: sql
1.
UPDATE table SET val3 = asqdqw WHERE val1 >= 1 AND val2 = TRUE;


Или
Код: sql
1.
UPDATE table Set val3 = '' WHERE Id IN (SELECT Id WHERE val1 > 1 AND val2 = TRUE)



Не будет ли выполнятся SELECT для каждого поля в таблице или только один раз?
...
Рейтинг: 0 / 0
Оптимизация Update
    #39411939
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Запрос 2 даст Syntax Error.
...
Рейтинг: 0 / 0
Оптимизация Update
    #39411963
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AkinaЗапрос 2 даст Syntax Error.И даже если его исправить, все равно лучше первый вариант.
Особенно, если условие val2 = TRUE высокоселективное и на поле val2 есть индекс.

Вот еще подзабыл, разрешит ли MySQL использовать в подзапросе модифицируемую таблицу...
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Оптимизация Update
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]