![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Выборка из двух таблиц [D7, Access]
Jet © (2004-10-21 12:50:00)Есть такая проблема:
Имеются две таблицы: Person, Food
Примерная структура:
Person:
--
Family Name ID
Иванов Иван 1
Петров Сергей 2
Сидоров Петр 3
Федоров Павел 4
Казаков Денис 5
Food:
Kind Person_id
Мясо 1
Хлеб 2
Овощи
Вода 4
Витамины
Из этих таблиц нужно выбрать те записи, у которых нет совпадения
Id = Person_id
т.е. в данном примере должно получится это:
--
Сидоров Петр
Казаков Денис
--
т.к. у них нет Person_id = Id
В запросе примерно так:
'Выбрать всех оставшихся без этих записей (select * from Person, Food where Id = Person_Id)'
Помогите пожалуйста составить запрос.
Jet (2004-10-21 13:21:00) [1]Таблицы взяты из ума. В реале таких нет..)))
Ega23 (2004-10-21 13:12:00) [2]Это World Food Program
Johnmen (2004-10-21 13:06:00) [3]>Nikolay M. © (21.10.04 13:01) [2]
Это БД тюремного изолятора :)))
Nikolay M. (2004-10-21 13:01:00) [4]Еще можно
SELECT * FROM T1
WHERE NOT EXISTS (SELECT 1 FROM T2 WHERE T1.ID = T2.Person_id).
Что будет быстрее - а аксесс его знает.
ПС.
Достойная еда:
Хлеб
Вода
Витамины
Федорову на воде хуже всех. Интересно, кому достанутся все витамины... :)
Johnmen (2004-10-21 12:56:00) [5]
SELECT * FROM T1
LEFT JOIN T2 ON T1.Id = T2.Person_Id
WHERE T2.Person_Id IS NULL
Правда для аксеса м.б. по-другому...