Avatar billede blu Nybegynder
29. september 2004 - 10:05 Der er 4 kommentarer

Krydstabulering mellem to tabeller

Her der nemme point for svar på et simpelt spørgsmål stillet af en SQL-begynder.

Jeg har to tabeller:
d) DECL_TRANS_OPER_DET
t) TRANS_OPER

Jeg vil selecte nogle felter fra d og vise feltet t.dep_cust_off_id fra t.

d.SID = t.SID og d.vers_numb = t.vers_numb

Hvordan gør jeg det på en fornuftig måde - jeg kan ikke selv få noget fornuftigt ud af det.

mvh
Bjarne Ulvmose
Avatar billede psv Nybegynder
29. september 2004 - 10:14 #1
Davs - hvis (sid, vers_num) er unik og findes i begge tabeller:

select d.xxx, d.yyy, t.dep_cust_off_id
from DECL_TRANS_OPER_DET d
    join TRANS_OPER t on (d.SID = t.SID og d.vers_numb = t.vers_numb)

Ellers kunne det være du skulle prøve "left join".
Avatar billede Slettet bruger
29. september 2004 - 12:13 #2
- eller -

select d.*, t.dep_cust_off_id
from DECL_TRANS_OPER_DET d,TRANS_OPER t
where d.SID = t.SID
  and d.vers_numb = t.vers_numb
Avatar billede pgroen Nybegynder
28. juni 2005 - 09:07 #3
'Her der nemme point for svar'...

åbenbart ikke SÅ nemme - hvad med at lukke den her ?
Avatar billede marcow Nybegynder
27. september 2008 - 09:17 #4
SELECT    tro.mrn
,    tro.dep_cust_off_id
,    dtod.xxx
FROM    TRANS_OPER tro
,    DECL_TRANS_OPER_DET dtod
WHERE    tro.sid = dtod.trans_oper_sid
AND    dtod.vers_numb = ( SELECT MAX(vers_numb)
              FROM      DECL_TRANS_OPER_DET d2
              WHERE  d2.trans_oper_sid = dtod.trans_oper_sid )

MCC ? mvh Marco
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
Kategori
Computerworld tilbyder specialiserede kurser i database-management

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