Ik heb problemen met het samenvoegen van drie tabellen. Het werkt goed als ik dezelfde zoekopdracht gebruik om twee tabellen samen te voegen (na het verwijderen van LEFT OUTER JOIN C ON B.No = C.No). Het werkt echter niet als ik drie tabellen gebruik.

Dit is mijn vraag

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; 

Opmerkingen

  • Als u uw joins instelt met de ontwerpweergave van de Access-queryontwerper, worden de haakjes toegevoegd die Access vereist wanneer de FROM -clausule bevat meer dan één join.

Answer

MS-Access is nogal kieskeurig in hoe het wil de te vormen joins. Voeg haakjes toe:

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 ; 

Standaard SQL-syntaxis – en de meeste andere DBMS – hebben geen haakjes nodig in de FROM clausule, hoewel je ze voor de duidelijkheid mag gebruiken.

Reacties

  • Bedankt voor je reactie. Het werkte! Hartelijk bedankt. Ik wist dat mijn vraag klopte, maar miste het haakje. Nogmaals bedankt. God zegene! 🙂
  • De meeste andere DBMS hebben deze niet nodig (en terecht).
  • Ja. Het is ' de eerste keer dat ik MS Access gebruik. Ik ' ben net zo gewend aan SQL Server!
  • @deppz: Weet je dat er een SQL-Server Express-editie is? (niet met de volledige mogelijkheden van de hogere edities, maar het kan aan uw behoeften voldoen).
  • Ja, ik ' heb dat eerder gebruikt. Voor deze specifieke taak hoefde ik alleen MS Access te gebruiken. Maar bedankt voor je suggestie.

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *