Kan er iemand even meedenken over mijn query, ik zie het namelijk niet meer :)
Ik wil het volgende hebben:
De eerst volgende wedstrijd van een bepaald persoon, maar deze persoon kan in meerdere teams zitten, dus wil ik alle wedstrijden op volgorde op datum, en dan LIMIT 1 zodat hij alleen de allereerste toont. Dit is zo'n beetje wat ik heb:
Ik begin het met ID van de speler. In dit geval 29.
SELECT
w.team_1,
w.team_2,
w.datum,
w.tijd
FROM
Wedstrijden AS w
Met dit nummer haal ik uit Teamindeling in welk team de persoon dit jaar speelt.
LEFT JOIN
Teamindeling AS t
ON
t.leden_id = '29' AND t.seizoen = '2013/2014'
Hierna heb ik 3 teams over met 3 team-id's
Deze haal ik dan door Teams om de teamnamen op te sporen
LEFT JOIN
Teams AS team
ON
t.team_id = team.id
en dan stel ik mijn eisen:
WHERE
( w.datum > DATE_FORMAT(NOW(),'%Y-%m-%d') OR (w.datum = DATE_FORMAT(NOW(),'%Y-%m-%d') AND DATE_FORMAT(w.tijd,'%H:%i') > DATE_FORMAT(NOW(),'%H:%i') ))
AND
(w.uitslag_t1 IS NULL OR w.uitslag_t1 = '')
AND
w.seizoen = '2013/2014'
ORDER BY
w.datum ASC
LIMIT 1
Zoiets, maar dan werkt hij niet helemaal :P
-Ik ga nu even kijken wat hij precies voor fout geeft.
Ik krijg als resultaat de allereerste wedstrijd te zien, maar geen rekening gehouden met de 3 teams, krijg namelijk een wedstrijd van een heel ander team....
Zit zelf te denken aan LEFT,RIGHT join fout ofzo?
Kan iemand me helpen?