Еще один MySQL-запрос

GeT

Новичок
Еще один MySQL-запрос

2 таблицы
cat_tree (cat_id || ....)
cat_properties(cat_id || prop_id)

Как удалить из таблицы cat_properties удалить все записи, содержащие cat_id, которых нет в cat_tree?
 

yugene

Отошел от дел
ИМХО, самый простой способ - вытащить все cat_id из cat_tree, склеить их через запятую и сделать DELETE FROM cat_properties WHERE cat_id NOT IN (склеенные cat_id)
 

GeT

Новичок
yugene
Спасибо, я тож так сначала подумал.
Тока вот не знаю, рационально это или нет...
 

Wicked

Новичок
есть другой способ:
1) создать временную таблицу temp_table
2) запихать в нее все id, которые нужно удалить с помощью insert into temp_talbe select ...
3) delete cat_properties from cat_properties, temp_table ... (http://dev.mysql.com/doc/mysql/en/delete.html , multi-table syntax)
4) drop temp_table
 
Сверху