Ca n'a strictement rien à voir avec un LIMIT. Ta requete ne doit pas etre geniale pour retourner 2 fois le meme concert pour la meme date. A moins que ce soit la table
Code :
- SELECT *
- FROM concert c INNER JOIN date d ON (c.id = d.concert_id)
- WHERE date.ville_id=$ID_VILLE
- AND concert.theme_id=$ID_THEME
- ORDER BY c.libelle ASC, d.date_concert ASC
|
Ta requete te retourne pour un ville donnée et un theme donné l'ensemble des concerts et de leurs dates. Selon cette derniere je soupconne qu'il y ait des doublons dans tes tables. Vois dejà a regler ca. Sinon:
Code :
- SELECT distinct *
- FROM concert c INNER JOIN date d ON (d.id = c.concert_id)
- WHERE date.ville_id=$ID_VILLE
- AND concert.theme_id=$ID_THEME
- ORDER BY c.libelle ASC, d.date_concert ASC
|
Et autre chose à faire, le * est à proscrire. Tu sais quels champs vont te servir, mets les directement dans le SELECT. C'est plus propre, plus efficace, ca reduit le volumetrie, ...
A moins que tu veuilles faire:
concert 1
-> Date 1, Date 2, ...
concert 2
-> Date 3, Date 4, ...
...
Dans ce cas, tu gardes la premiere requete, et le filtre se fera avec PHP.
Message édité par cinocks le 27-03-2006 à 23:41:11