viernes, 12 de mayo de 2017

Obtener el número de ocurrencias en una cadena en SQL Server

Para obtener el número de ocurrencias en una cadena en SQL Server, se puede conseguir con la siguiente instrucción:
(len('cadenaEntera') - DATALENGTH(replace('cadenaEntera', 'cadena_a_buscar', ''))) / len('cadena_a_buscar')
Donde ‘cadenaEntera’ es la cadena donde se desea buscar el número de ocurrencias y ‘cadena_a_buscar’ es el fragmento que se desea contar. Este fragmento puede ser de la longitud que se desee, no hace falta que sea de un único carácter. Lo que hace simplemente es quitar la cadena a buscar de la cadena original y luego obtener la diferencia de la longitud, para saber cuántos caracteres se ha eliminado. A continuación, este resultado lo divide entre la longitud de la cadena a buscar para averiguar cuántas veces aparece.
Por ejemplo, si se desea obtener el número de barras que contiene la cadena ‘343242/43242/34234/43224’, se podría obtener con la siguiente expresión.
(len('343242/43242/34234/43224') - DATALENGTH(replace('343242/43242/34234/43224', '/', ''))) / len('/')
El resultado en este caso sería 3.
Tomado de : https://trellat.es/numero-de-ocurrencias-en-sql-server/

No hay comentarios.:

Publicar un comentario