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

  • Om du ställer in dina anslutningar med Design View av Access-frågedesignern, läggs det till parenteser Access krävs när FROM klausul innehåller mer än en anslutning.

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.

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *