powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / вспомогательный View для Select-а
2 сообщений из 2, страница 1 из 1
вспомогательный View для Select-а
    #32464714
Фотография konstsch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть таблицы

MAN
num
fam
ima
....

REGISTRATION
num
street
house
kv
reg_flag - флаг действительной прописки.

Нужно сделать просмотр вида

Иванов | Иван | Иванович | Мира | 10 | 10
Прописка только действительная, и человек не должен дублироваться(сколько прописок столько раз человек и повторяется)

У человека может быть несколько прописок, но только одна действительная, а может и не быть действительных прописок вообще.
Если сразу сделать join между таблицами, то будут дублироваться люди.
Если сделать в предикате man.num=registration.num то не будет людей у которых вообще небыло прописок.

Дак вот я сделал View где только действительные прописки:

create view tmp_reg ( num, street, house, build, kv, reg_flag )
as
select num, street, house, build, kv, reg_flag from registation
where reg_flag='T'

а потом соединил таблицу Man и просмотр tmp_reg:

create view View_Man ( num, fam, ima, otch, street, house, build, kv )
as
select man.num, fam, ima, otch, street, house, build, kv
from man left join tmp_reg on man.num = tmp_reg.num


А вопрос вот в чем, такое вообще нормально, т.е. так можно делать или всё таки я туплю.
...
Рейтинг: 0 / 0
вспомогательный View для Select-а
    #32476831
Winni-Pooh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А че сразу LEFT OUTER JOIN к самим таблицам не применил???? 8-/
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / вспомогательный View для Select-а
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]