Allen,
ik ben een 'draft' versie aan het maken voor een website waar o.a. mogelijkheid inzit voor reservatie's te doen. De draft versie voor deze DB maak ik eerst in Access en nadien pas in MySQL (misschien handig om weten voor eventuele oplossingen te vergemakkelijken).
Ik heb drie tabellen: Users, Employees en reservations. In de users-tabel zitten zowel 'klanten' als 'medewerkers' (veld: permission). De Employees tabel bevat een relatie naar de 'users.ID' . De reservations tabel maakt gebruik van deze twee tabellen om enerzijds de UID op te slaan van de 'klant' die een reservatie maakt, en anderzijds de EID (Id van employees) om op te slaan bij welke medewerker de klant een reservatie maakt.
Nu was ik aan het proberen om een query te maken met als doel: Geef mij alle klantnamen die een reservatie gedaan hebben met hun bijhorende 'medewerker' naam.
Op zich niet zo moeilijk zou ik denken maar ik geraak er niet uit.
Wanneer ik volgende query laat lopen:
Om de Username weer te geven krijg ik geen enkel resultaat terug. Haal ik uit de query designer de relatie tussen Employees en Users weg, krijg ik de klantnaam te zien wie gereserveerd heeft.... (de AND clausule wordt dus weg gehaald)...
Maar ik veronderstel dat deze relatie moet blijven (iets met integriteit e.d. ?) .... Maar zelfs als ik de relatie weglaat, hoe krijg ik alsnog de Username van de 'medewerker' te zien?
Zoals eerder gezegd zal er uiteindelijk gewerkt worden met MySQL (icm ASP.NET / C#) maar ik denk (hoop) dat dit toch op een of andere manier in één enkele query moet te doen zijn?
ps: wat ik ook gedaan heb (maar denk niet dat dit functioneel in orde zal zijn) is een tweede query gemaakt waar ik enkel Employees en Users gebruik om vervolgens de Username op te halen van de medewerker op basis van een 'hard-coded' parameter..... en vervolgens deze query in de eerste laten zien....
ik ben een 'draft' versie aan het maken voor een website waar o.a. mogelijkheid inzit voor reservatie's te doen. De draft versie voor deze DB maak ik eerst in Access en nadien pas in MySQL (misschien handig om weten voor eventuele oplossingen te vergemakkelijken).
Ik heb drie tabellen: Users, Employees en reservations. In de users-tabel zitten zowel 'klanten' als 'medewerkers' (veld: permission). De Employees tabel bevat een relatie naar de 'users.ID' . De reservations tabel maakt gebruik van deze twee tabellen om enerzijds de UID op te slaan van de 'klant' die een reservatie maakt, en anderzijds de EID (Id van employees) om op te slaan bij welke medewerker de klant een reservatie maakt.
Nu was ik aan het proberen om een query te maken met als doel: Geef mij alle klantnamen die een reservatie gedaan hebben met hun bijhorende 'medewerker' naam.
Op zich niet zo moeilijk zou ik denken maar ik geraak er niet uit.
Wanneer ik volgende query laat lopen:
code:
1
2
3
4
5
6
7
| SELECT TblUsers.Username
FROM TblUsers
INNER JOIN (TblEmployees
INNER JOIN TblReservations
ON TblEmployees.ID = TblReservations.EID)
ON (TblUsers.ID = TblReservations.UID)
AND (TblUsers.ID = TblEmployees.UID); |
Om de Username weer te geven krijg ik geen enkel resultaat terug. Haal ik uit de query designer de relatie tussen Employees en Users weg, krijg ik de klantnaam te zien wie gereserveerd heeft.... (de AND clausule wordt dus weg gehaald)...
Maar ik veronderstel dat deze relatie moet blijven (iets met integriteit e.d. ?) .... Maar zelfs als ik de relatie weglaat, hoe krijg ik alsnog de Username van de 'medewerker' te zien?
Zoals eerder gezegd zal er uiteindelijk gewerkt worden met MySQL (icm ASP.NET / C#) maar ik denk (hoop) dat dit toch op een of andere manier in één enkele query moet te doen zijn?
ps: wat ik ook gedaan heb (maar denk niet dat dit functioneel in orde zal zijn) is een tweede query gemaakt waar ik enkel Employees en Users gebruik om vervolgens de Username op te halen van de medewerker op basis van een 'hard-coded' parameter..... en vervolgens deze query in de eerste laten zien....
code:
1
2
3
| SELECT TblUsers.Username FROM TblUsers INNER JOIN TblEmployees ON TblUsers.ID = TblEmployees.UID WHERE (((TblEmployees.ID)=1)); |
Last night I lay in bed looking up at the stars in the sky and I thought to myself, where the heck is the ceiling.