Avatar billede Slettet bruger
22. juli 2009 - 12:23 Der er 3 kommentarer og
1 løsning

Hjælp til SQL Query

Hej alle!

Dette er hvad jeg har (af hvad der er relevant for spørgsmålet):
tournaments: id, name, game
games: shortname, icon
matches: tournament, date

Jeg vil gerne sortere efter hvilken turnering der har næste kamp, tidligste først. Den query jeg pt. er kommet frem til ser således ud:

{SQL}
SELECT t.id, t.name, t.game, g.icon , m.date                                                        FROM tournaments AS t                                                                LEFT JOIN games AS g ON t.game=g.shortname                                                                 LEFT JOIN matches as m ON (t.id=m.tournament AND m.date>'{$now}')
GROUP BY t.id                                                            ORDER BY m.date ASC
{/SQL}

Der sorterer den jo bare ikke kampene, og det er her min SQL-viden siger til mig: "Det her kan du ikke finde ud af, spørg på Eksperten"

Så nu er jeg her, har I nogle forslag? :-)

Caspar
Avatar billede gbjensen65 Nybegynder
22. juli 2009 - 12:57 #1
Jeg tror godt at du kan undgå at bruge LEFT JOIN hvis du skriver noget i denne her retning:

SELECT t.id, t.name, g.shortname, m.date FROM tournaments AS, games AS g, matches AS m WHERE t.id=m.tournament and g.id=t.name and m.date>=NOW() ORDER by m.date

Jeg er lidt i tvivl om hvordan du linker dine tabeller sammen, men du kan jo kommentere mit forslag.

MVH Lars
Avatar billede Slettet bruger
22. juli 2009 - 14:42 #2
Super, nu virker det - sådan her:
SELECT t.id, t.name, t.game, g.icon, g.shortname, m.date
FROM tournaments AS t, games AS g, matches AS m
WHERE g.shortname=t.game AND m.tournament=t.id AND m.date>'{$now}'
GROUP BY t.id
ORDER by m.date

Hvis jeg nu også vil have antal kampe (matches), hvor date er mindre end nu, og result='0' - hvordan skal den så barberes? Altså: date<'{$now}' AND result='0'

Mvh :)
Avatar billede Slettet bruger
22. juli 2009 - 17:12 #3
Nevermind fandt en anden måde at gøre det på, smider du et svar?
Avatar billede gbjensen65 Nybegynder
22. juli 2009 - 20:14 #4
Jeg er glad for at kunne hjælpe!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester