Найти строки без отношений в sqlite3? - PullRequest
1 голос
/ 21 сентября 2011

У меня есть две таблицы.Один называется «члены», а другой - «дома» (должен быть домашним, но я сосу на английском).У них много-одно отношение (т.е. несколько членов принадлежат к одному домашнему хозяйству).Они связаны вместе members.homefk и homes.Id

Теперь, как я могу найти дома, которые не принадлежат ни одному из членов?Я хочу это для очистки дома.

Ответы [ 2 ]

4 голосов
/ 21 сентября 2011
SELECT homes.* 
FROM homes
LEFT JOIN members ON (members.home_id = home.id)
WHERE members.home_id IS NULL
0 голосов
/ 21 сентября 2011

Используйте подзапрос, чтобы вернуть все значения homefk, затем выберите из домов, где id отсутствует в подзапросе,

В Oracle выглядело бы что-то вроде

ВЫБРАТЬ h.id ОТ дома Ч ГДЕ НЕ ВИДИТСЯ ( ВЫБЕРИТЕ DISTINCT (m.homefk) ИЗ членов m)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...