народ помогите с запросом
есть две таблици tbl1 и tbl2
в tbl1 2 поля: id и time поле id уникально первичный ключ
в tbl2 2 поля: поле id (не уникально). и поле дата
нужен запрос на удаление из обеих таблиц записей где
tbl1.id=tbl2.id и поле tbl1.time <X (устарели по времени)
и на удаление из тбл2 тех записей id которых нет в tbl1
запрос на удаление устаревших по времени из обеих таблиц
у меня выглядит примерно так
------------------------------------------------------------------
delete connecktid,rwdata from connecktid,rwdata where
rwdata.id = connecktid.id and connecktid.time < 3 ;
--------------------------------------------------------------------
а вот как к томуже запросу добавить условие на удаление
из tbl2 записей которых нет в tbl1 у меня ума не хватает
а создавать виртул таблицу не охото ))
Спустя 1 час, 6 минут, 42 секунды (11.03.2007 - 14:53) Timok написал(а):
Цитата
нужен запрос на удаление из обеих таблиц записей где
tbl1.id=tbl2.id и поле tbl1.time <X (устарели по времени)
tbl1.id=tbl2.id и поле tbl1.time <X (устарели по времени)
Код
DELETE `tbl1`, `tbl2`
FROM `tbl1`, `tbl2`
WHERE `tbl1`.`id`=`tbl2`.`id` AND `tbl1`.`time` < X
FROM `tbl1`, `tbl2`
WHERE `tbl1`.`id`=`tbl2`.`id` AND `tbl1`.`time` < X
Спустя 46 минут, 35 секунд (11.03.2007 - 15:39) RedFox написал(а):
to timok
вообщето у меня так и написано за исключением кавычек.
я запросы писал в hidesql там кавычки не нужны.
мнеб к этому же запросу второе условие прикрутить на удаление
из tbl2 того чего нет в tbl1
тобиш где tbl2.id <> tbl1.id
вообщето у меня так и написано за исключением кавычек.
я запросы писал в hidesql там кавычки не нужны.
мнеб к этому же запросу второе условие прикрутить на удаление
из tbl2 того чего нет в tbl1
тобиш где tbl2.id <> tbl1.id
Спустя 3 часа, 21 минута, 32 секунды (11.03.2007 - 19:01) Timok написал(а):
тогда не знаю, чем тут помочь... если это вообще реально связать... может быть просто сделать 2 запроса и не мучится?
Спустя 5 минут, 35 секунд (11.03.2007 - 19:06) vasa_c написал(а):
Цитата
нужен запрос на удаление из обеих таблиц записей где
tbl1.id=tbl2.id и поле tbl1.time <X (устарели по времени)
tbl1.id=tbl2.id и поле tbl1.time <X (устарели по времени)
Если база поддерживает связь по ключам, то из второй таблицы удалятся автоматически.
Цитата
как к томуже запросу добавить условие на удаление
из tbl2 записей которых нет в tbl1
из tbl2 записей которых нет в tbl1
Код
tbl2.id not in (select id from tbl1)
? _____________