Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2003.12.19;
Скачать: [xml.tar.bz2];

Вниз

SQL-запрос на удаление записей   Найти похожие ветки 

 
Nikolai_S   (2003-11-28 10:09) [0]

Доброго времени суток!

У меня такой вопрос. Как составить SQL-запрос на удаление записей из заданной таблицы в базе данных MS Access 2000, если необходимо наложить на поля в других связанных таблицах через JOIN?

Пишу такой запрос (нужно удалить записи из табицы T1):

DELETE T1.*
FROM T1 LEFT JOIN T2 ON (T1.F1=T2.F1) AND (T1.F2=T2.F2)
WHERE T2.F1 IS NULL


Выдается ошибка "Невозможно удаление записей из указанных таблиц".

Вообще данный запрос должен удалять те записи из T1, у которых нет записей в T2 с совпадающими значениями в полях F1 и F2


 
Alex_Bredin   (2003-11-28 10:20) [1]


> Вообще данный запрос должен удалять те записи из T1, у которых
> нет записей в T2 с совпадающими значениями в полях F1 и
> F2

в лоб

DELETE FROM T1
WHERE (T1.F1 NOT IN(SELECT F1 FROM T2)) AND
(T1.F2 NOT IN(SELECT F2 FROM T2))

тока очень долго это..


 
Johnmen   (2003-11-28 10:23) [2]

Примерно так

DELETE FROM T1
WHERE EXIST (SELECT * FROM T1
LEFT JOIN T2 ON (T1.F1=T2.F1) AND (T1.F2=T2.F2)
WHERE T2.F1 IS NULL)


 
asp   (2003-11-28 10:25) [3]

Может,
DELETE FROM TABLE1 T1
WHERE NOT(EXISTS(SELECT T2.F1 FROM TABLE2 T2 WHERE T2.F1 = T1.F1 AND T2.F2 = T1.F2))



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2003.12.19;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.44 MB
Время: 0.008 c
3-61924
Russko
2003-11-27 12:24
2003.12.19
Table is busy!!!


14-62221
Dimka Maslov
2003-11-26 14:49
2003.12.19
то-то ещё будет


1-62079
Arximed
2003-12-08 20:31
2003.12.19
Формат бумаги


14-62217
ИдиотЪ
2003-11-26 10:10
2003.12.19
книги


1-62023
loki128
2003-12-06 17:05
2003.12.19
XML parser





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский