Трябва да зададете псевдоним на таблицата и след това да се обърнете към колоната чрез:
..
Настройка на схема на Oracle 11g R2 :
създайте или заменете тип t_document като обект ( IdDocument Number(10) ) /създайте документ на таблица на t_document( първичен ключ(IdDocument)) /INSERT INTO документ ИЗБЕРЕТЕ t_document(1) ОТ DUALUNION ВСИЧКИ ИЗБЕРЕТЕ t_document(2) FROM DUAL/създайте или заменете тип t_emprunteur като обект ( IdEmprunteur Number(10) ) /създайте таблица emprunteur на t_emprunteur( първичен ключ(IdEmprunteur)) /INSERT INTO emprunteur SELECT t_emprunteur(1) FROM DUALUNION ALL SELECT t_emprunteur(2) FROM DUAL/ създайте или заменете тип t_exemplaire като обект ( IdExemplaire Number(10), NumeroRayon Number(5), Document ref t_document) /създайте таблица exemplaire на t_exemplaire( първичен ключ(IdExemplaire), ограничение Document_c CHECK (Документът не е null)) /INSERT INTO exemplaire SELECT t_exemplaire( 1, 13, (SELECT REF(d) FROM document d WHERE d.IdDocument =2) ) FROM DUALUNION ALL SELECT t_exemplaire( 2, 42, (SELECT REF(d) FROM docu ment d WHERE d.IdDocument =1) ) FROM DUAL/създайте или заменете тип t_emprunt като обект ( IdEmprunt Number(10), DateD DATE, DateF DATE, Emprunteur_ref ref t_emprunteur, Exemplaire_ref ref t_exemplaire )/създайте таблица emprunt на t_emprunt( първичен ключ (IdEmprunt), Emprunteur_ref scope е emprunteur, Exemplaire_ref scope е exemplaire, DateD по подразбиране sysdate) /INSERT INTO emprunt SELECT t_emprunt( 1, SYSDATE, SYSDATE - 1, (SELECT REF(e) FROM emprunteur e WHERE e.IdEmprunteur =1), (SELECT REF(e) FROM exemplaire e WHERE e.IdExemplaire =2) ) FROM DUALUNION ALL SELECT t_emprunt( 2, TO_DATE( '2000/01/01', 'YYYY/MM/DD' ), TO_DATE( '2001/12 /31', 'ГГГГ/ММ/ДД' ), (ИЗБЕРЕТЕ REF(e) FROM emprunteur e WHERE e.Id Emprunteur =2), (SELECT REF(e) FROM exemplaire e WHERE e.IdExemplaire =1) ) FROM DUAL/CREATE INDEX emprunt_emprunteur_ref_idx ON emprunt (Emprunteur_ref)/
Заявка 1 :
ИЗБЕРЕТЕ e.IdEmprunt, e.Emprunteur_ref.IdEmprunteur, e.Exemplaire_ref.IdExemplaire, e.Exemplaire_ref.NumeroRayon, e.Exemplaire_ref.Document.IdDocumentFROM emprunt e
<предварителен код>| ИДЕМПРУНТ | EMPRUNTEUR_REF.IDEMPRUNTEUR | EXEMPLAIRE_REF.IDEXEMPLAIRE | EXEMPLAIRE_REF.NUMERORAYON | EXEMPLAIRE_REF.DOCUMENT.IDDOCUMENT ||-----------|-----------------------------|- ----------------------------|-------------------- -------|------------------------------------|| 1 | 1 | 2 | 42 | 1 || 2 | 2 | 1 | 13 | 2 |