Je suis débutant dans SQL. En utilisant Teradata.
J'ai besoin de supprimer les numéros de duplicats dans Par exemple: P> SQL code> cellule. P>
In: 1, 2, 3, 4, 5, 2, 3, 6
Out: 1, 2, 3, 4, 5, 6
4 Réponses :
mis à jour fort> Après cela, vous pouvez concaténer des lignes avec un curseur. Vous pouvez voir ici pour plus d'informations. < / p> p>
Je ne connais pas Teradata SQL, mais je pense que cette solution peut fonctionner:
Merci. Non, je suis méchant des valeurs dupliquées dans une cellule
OK, si vous utilisez SQL Server 2016, vous pouvez utiliser la fonction string_split code> pour placer toutes les valeurs séparées par des virgules dans les lignes un filtrant avec un simple
Sélectionner distinct. Code>
La question a une balise
Ceci est une écrasée de plusieurs méthodes et suppose que vous avez des services XML activés. Je n'ai pas de système code> td code> pour tester, de sorte que cela puisse ou plusieurs ne fonctionne pas, mais j'espère que cela vous donnera un point de départ: l'idée est de diviser la valeur délimitée des virgules, de supprimer les duplicats, puis de ré-construire la chaîne délimitée avec les nouvelles valeurs désapprouvées. Voici quelques références: p> Liste délimitée divisée
Construire une liste délimitée a > p> p>
Ce n'est généralement pas bon style d'avoir plusieurs valeurs dans une cellule (3NF et des amis ...) - mais vous pouvez l'appliquer ensuite avec Strtok ou les fonctionnalités CSV À ce résultat, vous pouvez appliquer un simple distinct. P>
Cela va être difficile à balancer dans une base de données SQL. Teradata est beaucoup plus configurée pour gérer cette exigence avec vos données normalisées, chaque valeur CSV dans un enregistrement séparé. Envisagez de normaliser vos données.
Dans quelle version
td code> êtes-vous sur?
@Ravioli 16.20.32.17