Форум: "Базы";
Текущий архив: 2004.07.11;
Скачать: [xml.tar.bz2];
ВнизФильтрация в union all Найти похожие ветки
← →
Karlson (2004-06-12 17:10) [0]Добрый день!
Возникла следующая проблема. Есть три таблицы: а, b, с.
а: id, name
b: id, name
c: id, id_a, id_b,
таблицы а и b связаны между собой таблицей с, при чем в таблице с фиксируются все id из b, а
если элемент не имеет связи с а, то ставим Null.
Например,
а:
id name
1 кот
2 мышь
3 собака
b:
id name
1 мясо
2 хлеб
3 яблоко
с:
id id_а id_b
1 1 1
2 3 1
3 2 2
4 Null 3
Делаю выборку с union all для выбора всей информации из b и а.
Возникла необходимость отфильтровать записи по конкретному name из а, но выборка возвращает
отфильтрованную первую часть и все остальное, что выбирает после uniona.
Как отфильтровать только по имени?
Заранее спасибо!!!
← →
Sandman25 © (2004-06-14 09:22) [1]select a.name, b.name
from a, b, c
where c.id_a = a.id
and c.id_b = b.id
and a.name like "%к%"
union зачем?
← →
ЮЮ © (2004-06-15 05:01) [2]>Sandman25 © (14.06.04 09:22) [1]
>а если элемент не имеет связи с а, то ставим Null.
Тогда уж
SELECT c.*, a.name a_name, b.name b_name
FROM
c
LEFT JOIN a ON c.id_a = a.id
LEFT JOIN b ON c.id_b = b.id
WHERE
a.name like "%к%"
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2004.07.11;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.036 c