FAQ |
Kalender |
![]() |
#1 | ||
|
|||
Flitig postare
|
Tja..
jag har en fråga som hämtar värden i flera tabeller som har relationer till varandra... Det fungerar bra, men den visar bara poster där det finns relationer i alla tabellerna som är inblandade... Går det att få med även poster i tabellen tblItems där det saknas vissa relationer? Kod:
SQL = "SELECT tblItems.SN, tblModell.Modell, tblStatus.Statusnamn, tblTillverkare.Tillverkare, tblUsers.Efternamn, tblUsers.Namn, tblverkOrter.VerkOrter FROM tblUsers INNER JOIN (tblModell INNER JOIN (tblverkOrter INNER JOIN (tblTillverkare INNER JOIN (tblStatus INNER JOIN tblItems ON tblStatus.[ID] = tblItems.[Status]) ON tblTillverkare.[ID] = tblItems.[Tillverkare]) ON tblverkOrter.[ID] = tblItems.[VerkOrt]) ON tblModell.[ID] = tblItems.[Modell]) ON tblUsers.[Personnr] = tblItems.[Personnr]" Går det att lösa på ett smidigt sätt?? Jag bjuder på öl.... |
||
![]() |
![]() |
![]() |
#2 | |||
|
||||
Flitig postare
|
du vill göra en outer join med andra ord?
|
|||
![]() |
![]() |
![]() |
#3 | ||
|
|||
Supermoderator
|
Yes, det är då en outer join du ska göra. Du kan göra antingen left outer join eller right outer join beroende på vilken tabell du vill ha värden från oavsett likhet eller inte. Läs mer om detta så lär du dig det nog ganska snabbt. Det är aningen lurigare än vanliga joins men inte särskilt svårt när man väl gjort det ett par gånger.
Ett varningens ord kan jag passa på att inflika. Se över din SQL-sats så du inte gör outer joins på fel sätt då du annars lätt kan få väldigt sega förfrågningar. Det kan ofta vara fördelaktigt att göra outer joins mellan två eller flera subqueries vid mer komplexa sökningar för att undvika att söka igenom onödigt mycket data.
__________________
Full-stack developer, free for smaller assignments |
||
![]() |
![]() |
Svara |
|
|