Maison >base de données >tutoriel mysql >Comment puis-je trouver la dernière occurrence d'une sous-chaîne dans SQL Server ?

Comment puis-je trouver la dernière occurrence d'une sous-chaîne dans SQL Server ?

Susan Sarandon
Susan Sarandonoriginal
2025-01-12 12:51:42637parcourir

How Can I Find the Last Occurrence of a Substring in SQL Server?

Trouver efficacement la sous-chaîne finale dans SQL Server

Travailler avec des chaînes dans SQL Server nécessite souvent d'identifier la dernière instance d'une sous-chaîne particulière. Bien que des fonctions telles que SUBSTRING et CHARINDEX soient utiles pour l'extraction de sous-chaînes, il existe une approche plus concise pour trouver l'occurrence finale.

Cette tâche est gérée avec élégance en combinant les fonctions RIGHT() et CHARINDEX(). Pour illustrer, extrayons la partie du nom de la base de données (DB_NAME()) qui suit le dernier trait de soulignement :

<code class="language-sql">SELECT RIGHT(DB_NAME(), CHARINDEX('_', REVERSE(DB_NAME()) + '_') - 1)</code>

La requête inverse intelligemment le nom de la base de données, localise le trait de soulignement final, puis extrait les caractères à sa droite.

À l'inverse, pour extraire le texte avant le dernier trait de soulignement, utilisez LEFT() et CHARINDEX() :

<code class="language-sql">SELECT LEFT(DB_NAME(), LEN(DB_NAME()) - CHARINDEX('_', REVERSE(DB_NAME()) + '_'))</code>

Cela inverse le nom de la base de données, identifie le dernier trait de soulignement et renvoie les caractères précédents.

Ces méthodes fournissent une solution plus propre et plus efficace pour identifier la sous-chaîne finale dans SQL Server, évitant ainsi la manipulation compliquée des chaînes.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn