Avatar billede moejensen Nybegynder
24. februar 2006 - 10:42 Der er 4 kommentarer og
1 løsning

hjælp til SQL

Jeg har følgende tabeller:

Calltype1
----------------
ElementID
ElementTitle

Calltype2
----------------
Calltype1ID
ElementTitle

Calltype3
----------------
ElementID
Calltype2ID
ElementTitle

jeg er ude på at få alle records ud, så de står således:

[Calltype1].ElementTitle,[Calltype2].ElementTitle,[Calltype3].ElementTitle

Hvis der ex ikke er nogen [Calltype3].ElementTitle under en [Calltype2].ElementTitle, så skal feltet bare være tomt.

Jeg har selv forsøgt mig med:

SELECT    dbo.Calltype1.ElementTitle, dbo.Calltype2.ElementTitle AS Expr1, dbo.Calltype3.ElementTitle AS Expr2
FROM        dbo.Calltype1 INNER JOIN
                      dbo.Calltype2 ON dbo.Calltype1.ElementID = dbo.Calltype2.Calltype1ID INNER JOIN
                      dbo.Calltype3 ON dbo.Calltype2.ElementID = dbo.Calltype3.Calltype2ID

Men der får jeg kun en fra [Calltype1].ElementTitle og ikke alle

Hvad er der galt
Avatar billede jensen363 Forsker
24. februar 2006 - 10:48 #1
I stedet for INNER JOIN, skal du benytte LEFT JOIN eller RIGHT JOIN
Avatar billede moejensen Nybegynder
24. februar 2006 - 10:57 #2
hvodan skal det så se ud?
Avatar billede jensen363 Forsker
24. februar 2006 - 10:59 #3
SELECT    dbo.Calltype1.ElementTitle, dbo.Calltype2.ElementTitle AS Expr1, dbo.Calltype3.ElementTitle AS Expr2
FROM        dbo.Calltype1 RIGHT JOIN
                      dbo.Calltype2 ON dbo.Calltype1.ElementID = dbo.Calltype2.Calltype1ID RIGHT JOIN
                      dbo.Calltype3 ON dbo.Calltype2.ElementID = dbo.Calltype3.Calltype2ID
Avatar billede moejensen Nybegynder
24. februar 2006 - 11:51 #4
fik det til at funke med

SELECT    dbo.Calltype1.ElementTitle AS Expr2, dbo.Calltype2.ElementTitle AS Expr1, dbo.Calltype3.ElementTitle
FROM        dbo.Calltype3 RIGHT OUTER JOIN
                      dbo.Calltype2 ON dbo.Calltype3.Calltype2ID = dbo.Calltype2.ElementID RIGHT OUTER JOIN
                      dbo.Calltype1 ON dbo.Calltype2.Calltype1ID = dbo.Calltype1.ElementID
Avatar billede jensen363 Forsker
24. februar 2006 - 11:59 #5
Tak for point :o)
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
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

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