Jag använder DAO med Jet-motorn mot en dBASE-databas. Motorn tillåter mig inte att göra Left join mot mer än EN tabell. Kan man komma runt detta? Använd ANSI standard syntax Det fungerar visst. Men du måste omge en av join'arna med paranteser i access så den vet i vilken ordning den skall utföra joins'en: Tyvärr Nils-G, det är just den syntaxen som INTE går.Left join på annat sätt
En inner join kan man ju skriva så här också:
<code>SELECT Tabell1.Fält1, Tabell2.Fält2
FROM Tabell1, Tabell2
WHERE Tabell1.Fält1 = Tabell2.Fält1</code>
Nu undrar jag om det finns ett motsvarande sätt att göra en Left join. Om jag använder detta skrivsätt kan jag nämligen göra inner joins på flera tabeller.
//JanneSv: Left join på annat sätt
SELECT Tabell1.Fält1, Tabell2.Fält2 , Tabell3.Fält4
FROM Tabell1
LEFT JOIN Tabell2 On Tabell1.Fält1 = Tabell2.Fält1
LEFT JOIN Tabell3 On Tabell2.Fält1 = Tabell3.Fält1
samma syntax för en inner join....din drivrutin stödjer antagligen bara ansiSv: Left join på annat sätt
SELECT Tabell1.Fält1, Tabell2.Fält2 , Tabell3.Fält4
FROM (Tabell1 LEFT JOIN
Tabell2 On Tabell1.Fält1 = Tabell2.Fält1) LEFT JOIN
Tabell3 On Tabell2.Fält1 = Tabell3.Fält1Sv: Left join på annat sätt
Men som vanligt träder Andreas in som en räddare i nöden. Här har jag trott att det varit en begränsning i databasmotorn som gjort att jag inte kunnat joina flera tabeller, och så visar det sig att jag inte haft rätt syntax.
Stort tack!
//Janne