Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум программистов _ SQL _ выбрать из таблицы1 строки, указатели которых отсутствуют в таблице2

Автор: Holger Dee Assuran 30:01:2008, 09:47

Использую MySQL5
Можно ли одним запросом выбрать из таблицы1 строки, указатели которых отсутствуют в таблице2?
Как это сделать циклом я себе примерно представляю, но хотелось-бы решить эту задачку элегантно - в один запрос.

Мое решение как сделать такую выборку циклом:
1. Выбрать все записи из таблицы1 и записать их в массив1
2. Обработать массив1 циклом, выполняя запрос поиска указателя из таблицы1 в таблице2. Если указатель в таблице2 не найден - записываем строку в массив2.
3. В результате получим массив2 содержащий строки из таблицы1, указатели которых отсутствуют в таблице2.

/Moerated By Morpheus/ Слегка подправил

Автор: Pasha 30:01:2008, 10:23

SELECT ... WHERE table1_id NOT IN (SELECT table2_p1 FROM table2)
или
SELECT ... FROM table1
EXCEPT
SELECT ... FROM table1 JOIN table2

Форум Invision Power Board (http://nulled.ws)
© Invision Power Services (http://nulled.ws)