Ik probeer een MySQL query op te zetten waarbij meerdere tabellen gekoppeld worden middels een WHERE voorwaarde.
Het is voor een competitiesysteem, waarbij het probleem onstaat tussen de koppeling van 2 tabellen. Deze tabellen zijn hier nu vereenvoudigd
tabel 1 (teams) heeft als structuur:
team_id, team_naam
en tabel 2 (wedstrijden) heeft als structuur:
wedstrijd_id ... ... wedstrijd_thuisploeg_id, wedstrijd_uitploeg_id ... ...
Nu is het de bedoeling dat er 1 query gedaan wordt waarbij deze 2 tabellen gekoppeld wordt zodat ik als output een array krijg met direct de naam van de thuisploeg en uitploeg. Hier ontstaat echter het probleem. Het kan natuurllijk zijn dat dit niet kan en dat ik na de eerste query gewoon 2 extra querys moet doen, maar ik heb dit liever in 1 keer.
In dit soort gevallen gebruik ik altijd:
Maar omdat mysql nu geen onderscheid meer kan maken tussen een uitploeg en een thuisploeg geeft deze query geen resultaat. Hoe maak ik mysql duidelijk dat er verschil is tussen een uit en een thuisploeg, maw wat zet ik achter de SELECT. Kan dit uberhaupt met een SELECT * FROM bla WHERE query, of heb ik andere middelen nodig
Het is voor een competitiesysteem, waarbij het probleem onstaat tussen de koppeling van 2 tabellen. Deze tabellen zijn hier nu vereenvoudigd
tabel 1 (teams) heeft als structuur:
team_id, team_naam
en tabel 2 (wedstrijden) heeft als structuur:
wedstrijd_id ... ... wedstrijd_thuisploeg_id, wedstrijd_uitploeg_id ... ...
Nu is het de bedoeling dat er 1 query gedaan wordt waarbij deze 2 tabellen gekoppeld wordt zodat ik als output een array krijg met direct de naam van de thuisploeg en uitploeg. Hier ontstaat echter het probleem. Het kan natuurllijk zijn dat dit niet kan en dat ik na de eerste query gewoon 2 extra querys moet doen, maar ik heb dit liever in 1 keer.
In dit soort gevallen gebruik ik altijd:
code:
1
2
3
4
5
6
7
8
9
10
| SELECT
Wedstrijd_id,
team_naam, ...
FROM
teams,
wedstrijden
WHERE
wedstrijd.wedstrijd_thuisploeg = teams.team_id
AND
wedstrijd.wedstrijd_uitploeg = teams.team_id |
Maar omdat mysql nu geen onderscheid meer kan maken tussen een uitploeg en een thuisploeg geeft deze query geen resultaat. Hoe maak ik mysql duidelijk dat er verschil is tussen een uit en een thuisploeg, maw wat zet ik achter de SELECT. Kan dit uberhaupt met een SELECT * FROM bla WHERE query, of heb ik andere middelen nodig
[ Voor 3% gewijzigd door japaveh op 20-02-2005 23:19 ]
Solo Database: Online electronic logbook and database system for research applications