0
votes

Supprimer les numéros de duplicate dans la cellule SQL

Je suis débutant dans SQL. En utilisant Teradata.

J'ai besoin de supprimer les numéros de duplicats dans SQL code> cellule. P>

Par exemple: P>

In: 1, 2, 3, 4, 5, 2, 3, 6

Out: 1, 2, 3, 4, 5, 6


3 commentaires

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 êtes-vous sur?


@Ravioli 16.20.32.17


4 Réponses :


0
votes

mis à jour
Je ne connais pas Teradata SQL, mais je pense que cette solution peut fonctionner:
xxx

Après cela, vous pouvez concaténer des lignes avec un curseur. Vous pouvez voir ici pour plus d'informations. < / p>


3 commentaires

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 pour placer toutes les valeurs séparées par des virgules dans les lignes un filtrant avec un simple Sélectionner distinct.


La question a une balise , pas .



-1
votes

Juste, par exemple, vous pouvez essayer ceci.

Remarque: Vous pouvez diviser les données à l'aide de Délimiter

Query SQL xxx

sortie

 sortie


1 commentaires

Je ne suis pas sûr que je ne fais que créer un exemple.



0
votes

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 td 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: xxx

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:

Liste délimitée divisée
Construire une liste délimitée


0 commentaires

0
votes

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.


0 commentaires