J'ai 2 tables, la 1ère table (retirée) et la 2e table (opérateur). L'une des colonnes de la table retirée est appelée "Référence", la colonne de référence contient parfois des valeurs dupliquées (dont elle est supposée). Les colonnes de la table opérationnelle sont ID (qui correspond exactement à la colonne de référence dans la table retirée), nom et dépôt. J'ai besoin de garder la 1ère table exactement la même taille que celle-ci (dans les numéros de ligne) mais ajoutez le nom et les numéros de dépôt de la table opératoire.
Remarque: Dans la table opératoire, les colonnes Nom et Depot seront toujours La même chose pour chaque numéro d'identification individuel. P>
Le problème que j'ai lorsque j'essaie la jointure gauche, est-ce que la requête duplique toutes les rangées de plusieurs fois. Je pense que c'est parce que la table opératoire contient la même valeur d'identifiant dans de nombreuses lignes différentes p> je veux que la requête retourne p> Ce que je reçois est quelque chose comme p>
4 Réponses :
Vous pouvez simplement obtenir des valeurs distinctes de cette deuxième table dans une sous-requête. Votre sous-requête aura 1 ligne pour chaque référence distincte de dépôt code> combo. GAUCHE OUTER REJOINT CODE> Bien et en supposant que votre référence référence code>: dépôt code> est 1: 1 dans ce opérateur code> Tableau devrait obtenir votre sortie souhaitée.
Je crois que cela devrait suffire à votre scénario:
dans SQL Server, vous pouvez utiliser Ceci renvoie une ligne de correspondance arbitraire. Vous pouvez utiliser un ordre appliquer code>: par code> dans la sous-requête si vous voulez une ligne particulière (telle que la plus ancienne ou la plus récente). P> P>
Merci pour l'aide de tout le monde. J'ai essayé quelques méthodes mais n'a pas obtenu le résultat exact que je cherchais. Enfin compris cela, c'était vraiment simple.
Votre sortie souhaitée a encore des doublons.
MySQL <> SQL Server, quels sql utilisez-vous?
Peut-être que la façon dont vos tables sont conçues, vous devrez peut-être participer à une condition supplémentaire? Comme:
JOIN DE JOIN DE GAUCHE OPERATIVE SUR ID = Référence et COL2 = COL3 CODE>? Peut-être que la relation tables (1: M) est bien et que vous devez simplement utiliserdistinct code>.@Seanlange il a toujours des doublons mais ce sont les doublons qui sont déjà dans la table retirée, ce que je veux
@Andrew im à l'aide de Microsoft SQL Server Management Studio. Mais prévoyez de déplacer la requête finie à une connexion de données Excel
@Radugheorghiu Le problème avec qui est la colonne ID est la seule colonne qui correspond exactement à