Головна сторінка
Top.Mail.Ru Яндекс.Метрика
Форум: "Бази";
Поточний архів: 2004.12.12;
Завантажити: [xml.tar.bz2];

Вниз

Робота з довідниками Знайти схожі гілки


Explorer   (2004-11-16 12:47) [0]

Майстри!
Як правильно організувати зв'язок такого виду
(Зараз ось так):

Табліца1 - (..., Id_table2, Id_table2_1 ...) - картка співробітника
Табліца2- (ID_table2, NameDolgnost, ....) - список посад

У Id_table2 - постійна посаду (not Null) - з табліци2
в Id_table2_1 - замещаемая посаду (може NULL) - з табліци1

Чи правильно організована зв'язок?
І як при цьому сформувати запит, щоб відображалися заміщаються посади (якщо вони є)?



Соловьев ©   (2004-11-16 12:50) [1]


> Чи правильно організована зв'язок?

Це може тільки сказати розробник: напевно так, якщо вона удовлетваряет вимогам ПО.

> І як при цьому сформувати запит, щоб відображалися заміщаються
> Посади (якщо вони є)?

left join



Explorer   (2004-11-16 13:32) [2]

а можна приклад?



Соловьев ©   (2004-11-16 13:35) [3]

QueryAnalizer + F1 Дивимося left join.



Explorer   (2004-11-16 14:24) [4]

Вивести вийшло тільки (Id_table2_1 + Id_table2 - однієї колонкою), тобто.

Іванов | інженер
Сидоров | начальник
Іванов | заст. начальника

select t.TabNum,
t3.NameProfession
from Staff as t left join SprProfession as t3
on t.id_profession2 = t3.id_profession
or t.id_profession = t3.id_profession
ORDER BY t.TabNum ASC

а ось як вивести ось так:

Іванов | інженер | заст. начальника
Сидоров | начальник |



Наталия ©   (2004-11-16 14:27) [5]

Так ти не з довідником професій left join роби, а таблицю staff з нею ж.



vuk ©   (2004-11-16 14:59) [6]

join з довідником потрібно робити два рази. Один раз inner для постійної посади, а другий раз - left, для замещаемой. Що стосується організаці даних, то тут, дійсно, все залежить від вихідної задачі. Наприклад, якщо заміщаються посад може бути не одна, то схема буде іншою.



сторінки: 1 вся гілка

Форум: "Бази";
Поточний архів: 2004.12.12;
Завантажити: [xml.tar.bz2];

Вгору





Пам'ять: 0.56 MB
Час: 0.063 c
14-1101283486
PVOzerski
2004-11-24 11:04
2004.12.12
USB-принтер з NT4 - чи можливо?


1-1101899571
Артем К.
2004-12-01 14:12
2004.12.12
Як задати кольору ліній для Charta Рандома, щоб не повторювалися?


6-1096834754
Азія
2004-10-04 00:19
2004.12.12
TStringGrid


4-1098215412
santey
2004-10-19 23:50
2004.12.12
irq


1-1101477916
Pentium133
2004-11-26 17:05
2004.12.12
Сопірованіе Canvas ів





африкаанс албанський арабська вірменин азербайджанець баскський білоруський болгарська каталонський Китайська (спрощене письмо) Китайський традиційний) хорватський чеська данську мову нідерландський Ukranian естонець Філіппінська фінську мову французький
галісійська грузинський німецький грецький гаїтянський креольський давньоєврейську хінді угорський ісландський індонезієць ірландський італійський японський корейський латиська литовець македонець малайський мальтійський норвежець
перс полірування португальська румунський російська сербський словацький словенський іспанська суахілі шведську мову тайський турецька український урду в'єтнамський валлійський ідиш бенгальський боснійський
кебуано есперанто гуджараті хауса хмонг ігбо яванський каннада кхмерская Лао латинь маорі маратхі монгольський непальська панджабі сомалійський тамільська телугу йоруба
зулуський
Англійська Французький Німецький Італійський Португальська Русский Іспанська