@SeiLove

Неправильный запрос к базе?

Кто-нибудь может подсказать в чём ошибка запроса?
SELECT distinct zzz_1a.tip, zzz_1b.tip, zzz_tip_1a.id_tip, zzz_tip_1b.id_tip, zzz_1a.nomer_kvart,   zzz_1b.nomer_kvart
FROM zzz_1a,zzz_1b,zzz_tip_1a, zzz_tip_1b   
where ((zzz_1a.tip = zzz_tip_1a.id_tip) AND (zzz_tip_1a.kol_komnat=1)) OR ((zzz_1b.tip=zzz_tip_1b.id_tip) AND (zzz_tip_1b.kol_komnat=1))

у меня есть четыре таблицы.
zzz_1a, zzz_1b - это две таблицы на квартиры.
zzz_tip_1a, zzz_tip_1b - это таблицы хранящие структуру этих квартир. связь идёт такая, что у таблиц квартир есть поле tip , которое хранит значение поля id_tip таблицы планировки. И вот когда я хочу вывести все квартиры 1а и 1б c колв-ом комнат = 1... (кол-во хранится в структуре квартиры) мне выдаётся сразу всё на свете. Пытался делать join,но запутался и вышло хуже..
  • Вопрос задан
  • 112 просмотров
Решения вопроса 1
@mletov
Не пытайтесь получить весь результат сразу.
Заджоиньте zzz_1a и zzz_tip_1a. Если результат правильный, то по аналогии сделайте для типа b, а потом объедините результаты через UNION.
Если неправильный - ищите ошибку. В общем, раскладывайте на составляющие и упрощайте.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Dreamka
@Dreamka
Web-разработчик.
Пытался делать join,но запутался и вышло хуже..

А надо делать JOIN.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы