2013-03-08 5 views

ответ

1

От the manual:

Вы можете указать несколько таблиц в DELETE заявления для удаления строк из одной или нескольких таблиц в зависимости от конкретных условий в пункте WHERE.

Множественный стол Синтаксис:

DELETE [LOW_PRIORITY] [QUICK] [IGNORE] 
    tbl_name[.*] [, tbl_name[.*]] ... 
    FROM table_references 
    [WHERE where_condition] 

Для синтаксиса нескольких таблицы, DELETE удаляет из каждой tbl_name строки, которые удовлетворяют условиям.

Для первого синтаксиса с несколькими таблицами удаляются только соответствующие строки из таблиц, перечисленных перед предложением FROM. Для второго синтаксиса с несколькими таблицами удаляются только сопоставление строк из таблиц, перечисленных в предложении FROM (перед предложением USING). Эффект в том, что вы можете удалять строки из нескольких таблиц в то же время и дополнительные таблицы, которые используются только для поиска:

DELETE t1, t2 FROM t1 INNER JOIN t2 INNER JOIN t3 
WHERE t1.id=t2.id AND t2.id=t3.id; 

Или:

DELETE FROM t1, t2 USING t1 INNER JOIN t2 INNER JOIN t3 
WHERE t1.id=t2.id AND t2.id=t3.id; 
+0

спасибо, пусть я попробую это –

Смежные вопросы