J'ai une requête qui renvoie les étudiants et leurs colocataires. L'idée est de faire apparaître tout le monde dans la première colonne puis dans les colonnes 2 et 3 pour avoir chaque colocataire. La colonne 3 peut être vide, mais les colonnes 1 et 2 auront toujours des résultats.SQL Essayer de sélectionner uniquement le premier enregistrement parmi plusieurs renvoyés
Ma requête renvoie les données correctes à l'exception du moment où il y a 3 personnes dans la pièce, j'obtiendrai plus d'un enregistrement. tel que ci-dessous.
_roommate1 roommate2 roommate3 room1_
_roommate1 roommate3 roommate2 room1_
_roommate2 roommate1 roommate3 room1_
_roommate2 roommate3 roommate1 room1_
_roommate3 roommate1 roommate2 room1_
_roommate3 roommate2 roommate1 room1_
Tout ce que je veux faire est de garder la première instance de chaque ligne lorsque le champ est apparaît dans la colonne 1.
donc je voudrais réduire la production à:
_roommate1 roommate2 roommate3 room1_
_roommate2 roommate1 roommate3 room1_
_roommate3 roommate1 roommate2 room1_
L'intention est d'envoyer une lettre type à chaque personne dans la colonne 1 pour leur indiquer le nom de leurs colocataires.
Puisque je ne peux utiliser distinct sur une ligne et pas sur un champ, je suis à une perte temporaire comme comment je pourrais être en mesure de le faire. Ce que je voudrais être en mesure de dire est de savoir si cela a fonctionné:
SELECT (DISTINCT Column1), column2, column3
donc je n'aurais que la première instance de chaque colonne1. Aucune suggestion?
Copie possible: http://stackoverflow.com/questions/251278/select-one-column-distinct-sql – Gian
pouvez-vous inclure la requête que vous utilisez pour générer votre exemple de sortie? –
Pourriez-vous nous donner une version allégée de vos tableaux, s'il vous plaît? –