0
votes

Séparez le nom complet en premier et dernier et supprimez 'Junk'

n'était pas sûr de la meilleure façon de verser cela. Donc j'ai une colonne avec des noms, comme ci-dessous: xxx

Obtenir les noms séparés est suffisamment facile avec le nom d'analyse et remplacer les fonctions, mais où je rencontre un cornichon est de se débarrasser de la 'Junk' à la fin: xxx

résultats pour la colonne de nom de dernière nom: xxx

spécifiquement, je veux me débarrasser de le texte (ID utilisateur) à la fin du nom de famille. Si les noms étaient de la même longueur, je pouvais simplement utiliser une fonction droite, mais elles varient de longueur. Idées?


0 commentaires

3 Réponses :


0
votes

Si vous souhaitez simplement supprimer le dernier mot (nom d'utilisateur), vous pouvez utiliser une requête comme celle-ci xxx

the charindex fonction localise la survenue du caractère / s vous cherchez.


2 commentaires

Rtrim supprime uniquement les espaces, autant que je sache


Oui, certains de vos noms ont un espace entre le nom, le - et le nom d'utilisateur



0
votes
select left(PARSENAME(REPLACE(SalesPerson_Name, ' ', '.'), 1), len(SalesPerson_Name)-CHARINDEX('-',SalesPerson_Name)-1)
You are getting charindex of - and taking the left string of it. 

2 commentaires

Cela devient très proche. Les derniers entrées sont un peu bonsky, alors je vais l'utiliser comme un modèle que je pense. Merci!


Pourriez-vous l'accepter comme réponse si cela fonctionne pour vous. Merci.



0
votes

Examiner si un trait d'union est suivi d'un espace ou non, et divisé en fonction de ces deux cas xxx


1 commentaires

Cela conserve toujours le nom d'utilisateur final sur le nom de famille avec le trait d'union, malheureusement, mais merci d'avoir pris un coup à ce sujet.