Una función útil de SQL Server es la función Charindex (). Esta función devuelve la posición de índice de una subcadena.
Esta guía analizará cómo usar la función Charindex para buscar una subcadena específica.
Uso básico
Utilizamos principalmente la función Charindex para localizar/buscar una subcadena desde una posición específica. La función devuelve la posición de la subcadena si se encuentra y un entero 0 si no se encuentra.
La sintaxis de la función es como:
Charindex (subcadena, main_string [, start_location]);Argumentos de función y valor de retorno
La función Charindex acepta 3 argumentos:
El parámetro start_location es opcional. Si no se especifica el valor del start_position, la búsqueda comenzará al comienzo de la cadena.
El charindex devuelve un int por defecto. Sin embargo, si la subcadena es de tipo nvchar (max), varbinary (max) o varchar (max), la función devuelve un tipo de bigint.
Ejemplos de Charindex () SQL Server ()
Veamos algunos ejemplos de uso de la función Charindex () en SQL Server.
Ejemplo 1:
El ejemplo a continuación busca una subcadena simple.
Seleccione CharIndex ('SQL', 'Base de datos: SQL Server') como index_position;La consulta anterior debe devolver la posición inicial de la subcadena coincidente.
Una salida de ejemplo es como se muestra:
index_positionNOTA: La posición inicial devuelta es de índice basado en 1 y no 0 basado en 0.
Ejemplo 2
El ejemplo a continuación muestra que la posición inicial está basada en 1.
Seleccione CharIdex ('Linux', 'LinuxHint') como index_position;La ubicación resultante es 1, como se muestra a continuación:
index_positionEjemplo 3:
La función Charindex es insensible en el caso. Esto significa que coincidirá con una subcadena incluso si no comparten una carcasa similar.
Seleccione CharIdex ('Linux', 'LinuxHint') como index_position;La consulta aún devuelve la primera posición coincidente de la subcadena buscada.
index_positionEjemplo 4:
Supongamos que desea realizar una búsqueda sensible a la caja utilizando la función Charindex? Para hacer esto, puede usar la recopilación para especificar su recopilación de destino.
Un ejemplo es como se muestra:
Seleccione Charindex ('Linux', 'Linuxhint' Collate LATIN1_GENERAL_CS_AS_KS_WS) como index_position;La consulta anterior devolverá un entero 0 ya que no hay una subcadena coincidente.
index_positionEjemplo 5:
Como mencionamos anteriormente, puede especificar el valor de Start_position para establecer el comienzo de la posición de búsqueda.
Por ejemplo, la consulta a continuación establece la posición de inicio como 10.
Seleccione Charindex ('Charindex', 'SQL Server Charindex Tutorial', 10) como index_position;En nuestro ejemplo, la primera coincidencia de la subcadena se encuentra en la posición 12.
index_positionSi establecemos la posición de inicio después de la primera coincidencia de la subcadena, la función devolverá 0 ya que no hay otros casos coincidentes.
Seleccione Charindex ('Charindex', 'Tutorial de Charindex SQL Server', 13) como index_position;El valor de retorno es como:
index_positionConclusión
En este artículo, entendió cómo usar la función Charindex () en SQL Server. Esta función le permite buscar una subcadena y devolver la posición del primer caso coincidente.
Gracias por leer!