Новости
Документация
Download
Webboard
Поиск
FAQ/ЧаВо
Обратная связь




MySQL.RU - Webboard



Вернуться
Удаление сразу из нескольких таблиц (Посторонним В) 28/10/2004 - 21:02:20
      Re: можно с MySQL 4.0.0 (Dinky) 28/10/2004 - 23:06:02
      Re: Удаление СРАЗУ из нескольких таблиц (Посторонним В) 29/10/2004 - 11:37:51
      Re: Удаление СРАЗУ из нескольких таблиц (Sevsk) 29/10/2004 - 16:46:30
      Re: Удаление СРАЗУ из нескольких таблиц (walrus) 29/10/2004 - 16:48:28
      Re: Удаление СРАЗУ из нескольких таблиц (Dinky) 29/10/2004 - 18:14:43
      Re: Удаление СРАЗУ из нескольких таблиц (Doomka) 14/07/2010 - 15:53:58
      Re: Удаление СРАЗУ из нескольких таблиц (Doomka) 14/07/2010 - 15:56:22

> Original message text:
> From: Посторонним В - 28/10/2004 - 21:02:20
> Subject:Удаление сразу из нескольких таблиц
> -----------------
> Можно ли одним запросом удалить записи из нескольких таблиц?
> например есть три таблицы: группы, пользователи, записи
> я хочу удалить группу 5, так вот нужно удалить из таблицы groups запись об этой группе, из users всех пользователей этой группы, из marks все записи пользователей этой группы
>
> DELETE FROM groups, users, marks USING groups, users, marks WHERE groups.id=5 AND users.group=5 AND marks.user=users.id
>
> такая конструкция не работает чегота
> заранее спасибо
>


From: Doomka - 14/07/2010 - 15:53:58
Subject:Удаление СРАЗУ из нескольких таблиц
-----------------
Замечено, что при удалении 600000 строк с применением метода multi-delte затрачено порядка 7-ми минут, а если удалить из таблиц по отдельности, то на одну таблицу затрачивается около одной минуты. Почему это важно? Дело в тайм-ауте сервера, т.е. получил ошибку и результат неизвестен, обычно частичное удаление произошло.

конфигурация сервера не важна, важно отношение времени

условия: три таблицы, в одной id + date

multi-delete:
delete O, OA, OP `order` O, `order_add` OA, `order_pay` OP
WHERE O.date < unix_timestamp('2007-12-31 23:59:59')
and OA.id = O.id
and OP.id = O.id

single-delete
delete from order_add where id IN (select id from order where date < unix_timestamp('2007-12-31 23:59:59'))


[Это сообщение - спам!]

Последние сообщения из форума

Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL, версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
 Имя:
 E-mail:
 Тема:
 Текст:
Код подтверждения отправки: Code
37276



РЕКЛАМА НА САЙТЕ
  Создание сайтов | |