У меня есть база данных фото / альбомов SQLite с 3 таблицами:
Альбомы
id name hide
--------------------------
1 Holiday 2010 1
2 Day Trip 0
Фотографии
id file
-----------------
1 photo1.jpg
2 photo2.jpg
3 photo3.jpg
4 photo4.jpg
Отношение (связывает фотографии с альбомами)
album photo
-----------------
1 1
1 2
2 3
2 1
Фотография может быть назначена нулю, одному или нескольким альбомам.В каждом альбоме есть столбец «Скрыть», который указывает, следует ли игнорировать фотографии этого альбома.
Я пытаюсь найти запрос SELECT, который возвращает все фотографии, которые не назначены альбому, + все фотографии в альбомах, которые не являются скрытыми (т. Е. Для их значения 'hide' установлено значение 0).
Я пришел с запросом, который выбирает фотографии в видимых альбомах, но я не знаю, как включить фотографии, которые не назначены для альбома:
SELECT file
FROM photos, albums, relation
WHERE photos.id = relation.photo
AND albums.id = relation.album
AND albums.hide = 0
Этозапрос возвращает:
photo1.jpg
photo3.jpg
Однако требуемый результат будет следующим:
photo1.jpg
photo3.jpg
photo4.jpg
Проблема в том, что photo4.jpg не назначен альбому в таблице Relation.Ты знаешь как это решить?
Большое спасибо за помощь!