208 похожих чатов

Всем привет. Кто-нибудь может объяснить, почему в UserProfileRecordTable::deleteByHistoryFilter() используется такой

запрос с subquery?

DELETE FROM b_user_profile_record
WHERE HISTORY_ID IN(
SELECT ID FROM b_user_profile_history
{$where}
)

Который даёт slow лог

# Query_time: 230.422565 Lock_time: 0.000238 Rows_sent: 0 Rows_examined: 42090120
use table;
SET timestamp=1605087276;
DELETE FROM b_user_profile_record
WHERE HISTORY_ID IN(
SELECT ID FROM b_user_profile_history
WHERE USER_ID = 491169
);

Почему нельзя было сделать например так:
DELETE b_user_profile_record FROM b_user_profile_record
JOIN b_user_profile_history
ON b_user_profile_history.ID = b_user_profile_record.HISTORY_ID
WHERE b_user_profile_history.USER_ID = 491169;
что гораздо быстрее?

3 ответов

40 просмотров
Ivan-Milov Автор вопроса

@VirtualWhiskers Евгений, можете пожалуйста вот это посмотреть? Я не прав?

Ivan Milov
@VirtualWhiskers Евгений, можете пожалуйста вот эт...

потому что метод универсальный и фильтр может быть какой угодно

Ivan-Milov Автор вопроса
Eugene Zhukov
потому что метод универсальный и фильтр может быть...

Ок. Ну это нормально, что при попытке авторизоваться через соц сеть mail.ru, подключённую стандартно, выполняется запрос на 230 секунд и пользователь получает 504ю ошибку? То есть авторизоваться через соц сеть невозможно. Думал, может индексы какие-то повесить и решить эту проблему, но из того, что нагуглил, выходит что индексы там не помогут.

Похожие вопросы

Обсуждают сегодня

Какой-то там пердун в 90-х решил, что есть какая-то разная типизация. Кого вообще это волнует?
КТ315
49
Подскажите, а есть vault lite или ченить такое?) А то нужен вольт для похода в вольт, но весит он ~500 мб) как-то многовато для парочки запросов ))
Alexandr Orloff
17
void terminal_scroll() { memmove(terminal_buffer, terminal_buffer + VGA_WIDTH, buffer_size - VGA_WIDTH); memset(terminal_buffer + buffer_size - VGA_WIDTH, 0, VGA_WIDTH); ...
Егор
47
Всем привет! Подскажите, пожалуйста, в чем ошибка? Настраиваю подключение к MySQL. Либы лежат рядом с exe. Все как по "учебнику"
Евгений
16
А можете как-то проверить меня по знаниям по ассемблеру?
A A
132
Здравствуйте! У меня появилась возможность купить книгу "Изучай Haskell во имя добра!". Но я где-то слышал, что эта книга устарела. Насколько это правда??
E
22
Здравствуйте! Я вот на stepic решаю задачи на хаскеле https://stepik.org/lesson/8443/step/8?unit=1578 мой код import Data.List (isInfixOf) removing :: String -> [String] ->...
E
10
Камрады, кто тесно работал с vtv, хотел уточнить. Ширина column задаётся жёстко на этапе создания дерева или можно в рантайме ее менять программно (не мышкой)?
Ed Doc
10
да ладно ... что там неочевидного ? глянуть в исх-ки датасета и/или кверика чтобы понять в каком месте и как выполняется обращения к св-вам blablaSQL - минутное дело, даже е...
Сергей
7
Здесь для arm кто-нибудь кодит ?
Nothing
52
Карта сайта