Jag har problem att gå med i tre tabeller. Det fungerar bra när jag använder samma fråga för att gå med i två tabeller (efter att jag tagit bort LEFT OUTER JOIN C ON B.No = C.No
). Det fungerar dock inte när jag använder tre tabeller.
Det här är min fråga
SELECT A.Name, B.Quantity, C.Quantity FROM A LEFT OUTER JOIN B ON A.ID = B.ID LEFT OUTER JOIN C ON B.No = C.No;
Kommentarer
Svar
MS-Access är ganska kräsen på hur den vill fogarna ska bildas. Lägg till parenteser:
SELECT A.Name, B.Quantity, C.Quantity FROM ( A LEFT OUTER JOIN B ON A.ID = B.ID ) LEFT OUTER JOIN C ON B.No = C.No ;
Standard SQL-syntax – och de flesta andra DBMS – behöver inte kräva parenteser i FROM
klausul, även om du får använda dem för tydlighetens skull.
Kommentarer
- Tack för ditt svar. Det fungerade! Tack så mycket. Jag visste att min fråga var rätt, jag missade bara parentesen. Tack igen. Gud välsigna! 🙂
- De flesta andra DBMS behöver inte dessa (och med rätta).
- Ja. Det ' är min första gången jag använder MS Access. Jag ' är bara så van vid SQL Server!
- @deppz: Vet du att det finns en SQL-Server Express-utgåva? (inte med full kapacitet i de högre utgåvorna men det kan tillgodose dina behov).
- Ja jag ' har använt det tidigare. För just denna uppgift var jag bara tvungen att använda MS Access. Tack för ditt förslag.
FROM
klausul innehåller mer än en anslutning.