Problème de doublons dans requête croisée

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Problème de doublons dans requête croisée

par Genova » 19 juil. 2007, 10:04

Ta requête est correcte : tu récupères les annonces, ainsi que les optimisations de tes annonces. Il est donc normal que tu ais autant de ligne annonce que de lignes optimisations, c'est le principe.

A vrai dire, dit nous plutôt ce que tu souhaiterais exactement récupérer qu'on t'explique un peu pourquoi ta requête est fausse (et donc qu'on t'aiguille vers la bonne solution).

Problème de doublons dans requête croisée

par Ghismart » 18 juil. 2007, 20:03

Bonjour J'ai un problème avec des doublons dans une requête combinant 2 tables en MySql. Une table est la liste des annonces et l'autres la liste des options possibles appliquées à chaque annonce. Une annonce peut donc avoir plusieurs options mais l'annonce ne devrait pas apparaître plus d'une fois!

J'utilise la fonction "LEFT JOIN" mais j'ai toujours des doublons! Certaines annonces qui ont plusieurs options apparaissent plus d'une fois.

EX:
[SELECT * FROM annonces LEFT JOIN optimisations ON annonces.ad_id = optimisations.ad_id WHERE annonces.statut = '2']

Y a-t'il une autre focntion que je pourrais utiliser au lieu de "LEFT JOIN"? Je pensais utiliser DISTINCT(annonces.ad_id) mais je n'obtiendrais qu'un champ alors que la base en compte beaucoup plus et j'ai besoin de toutes les données de la base.

Qulequ'un a-t'il une solution? :(

Merci d'avance