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

Подскажите плиз почему когда делаешь так: DROP TEMPORARY TABLE IF

EXISTS my_temp_table;
CREATE TEMPORARY TABLE my_temp_table SELECT comments.cid FROM comments, video WHERE comments.vid=video.vid AND comments.status=0 AND video.status IS NULL AND comments.author NOT IN (SELECT DISTINCT(author) FROM comments WHERE status!=0);
DELETE FROM comments WHERE cid IN (SELECT cid FROM my_temp_table);

оно очень долго удаляет, примерно по одной записе в секунду, а их там сотни тысяч. или как можно иначе решить эту задачу?

6 ответов

6 просмотров

Я бы попробовал завести ещё один столбец to_delete - и заполнить его единицами, если комментарий нужно удалить. Потом по столбцу удалить. Сейчас идёт перебор всех id при каждом удалении, это долго

Vorug- Автор вопроса
Vorug- Автор вопроса
Nikolay Matsievsky
Я бы попробовал завести ещё один столбец to_delete...

не сработало, запрос: UPDATE comments, video SET comments.to_delete=1 WHERE comments.vid=video.vid AND comments.status=0 AND video.status IS NULL AND comments.author NOT IN (SELECT DISTINCT(author) FROM comments WHERE status!=0) так же выдаёт ошибку: #1093 - You can't specify target table 'comments' for update in FROM clause

Vorug- Автор вопроса
yarik
через left join надо делать

ок спасибо, почитаю

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта