Avatar billede joki Juniormester
03. juli 2015 - 07:54 Der er 3 kommentarer

recursivt database opslag

Hej

Jeg er ved at bygge database over reservedele og har brug for at kunne danne view som viser part id, part nr og part tekst når et part nr er registeret som erstatning for andet part nr. Jeg har nedenstående tabeller


STOCK_PART :

STOCK_PART_ID
STOCK_PART_NO
STOCK_PART_TEXT

STOCK_INTERCHANGEABLE :

STOCK_INTERCHANGEABLE_P_ID (PART ID)
STOCK_INTERCHANGEABLE_PP_ID (PARENT PART ID)
Avatar billede Slettet bruger
03. juli 2015 - 09:15 #1
Er er OUTER JOIN ikke nok her?

Hvis du vil lave noget rekursivt kan du bruge CONNECT BY: http://docs.oracle.com/cd/B19306_01/server.102/b14200/queries003.htm
Avatar billede joki Juniormester
13. juli 2015 - 14:00 #2
Jeg kan ikke rigtig får outer join til at virker.
Det skal være sådan at laver du en select hvor STOCK_INTERCHANGEABLE_P_ID
= 1 skal den også vise STOCK_INTERCHANGEABLE_PP_ID x hvis der er en record med STOCK_INTERCHANGEABLE_PP_ID = x og STOCK_INTERCHANGEABLE_P_ID =1
Avatar billede Slettet bruger
13. juli 2015 - 14:30 #3
OUTER JOIN kan skrives sådan:

select sp.*, si.STOCK_INTERCHANGEABLE_PP_ID
from STOCK_PART sp, STOCK_INTERCHANGEABLE si
where si.INTERCHANGEABLE_P_ID(+) = sp.PART_ID
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester