Doublons dans une requête avec UNION [SQL]

Résolu
em72 Messages postés 179 Date d'inscription   Statut Membre Dernière intervention   -  
Skeletyon Messages postés 1552 Date d'inscription   Statut Membre Dernière intervention   -
Bonsoir,

J'ai une table SQL DVD qui possède les champs suivants:
id_dvd
titre_dvd
id_acteur1
id_acteur2
id_acteur3
...

Et une table AUTEUR qui contient les acteurs (avec notamment le champ "nom_acteur").

J'ai fais la requête suivante pour rechercher un DVD par auteur:

SELECT id_dvd, titre_dvd, nom_acteur FROM DVD, ACTEUR WHERE ACTEUR.id_acteur=DVD.id_acteur1 AND (ACTEUR.nom_acteur LIKE mot OR DVD.titre_document LIKE mot)

UNION SELECT id_dvd, titre_dvd, nom_acteur FROM DOCUMENT, AUTEUR WHERE ACTEUR.id_acteur=DVD.id_acteur2 AND ACTEUR.nom_acteur LIKE mot

UNION SELECT id_dvd, titre_dvd, nom_acteur FROM DOCUMENT, AUTEUR WHERE ACTEUR.id_acteur=DVD.id_acteur3 AND ACTEUR.nom_acteur LIKE mot;


Le problème c'est que cela me ramène des doublons s'il trouve le mot à la fois dans le titre et dans nom_acteur correspondant à id_acteur2...

Comment éviter cela?

En vous remerciant!
A voir également:

1 réponse

Skeletyon Messages postés 1552 Date d'inscription   Statut Membre Dernière intervention   156
 
Bonjour.

Sans décortiquer vos requêtes, le plus simple, en général, quand on a des doublons est d'utiliser DISTINCT dans sa requête.



0