28% de descuento del curso en SQL Server

Estrada Web Group Estrada Web Group
Uso de función PATINDEX
Estrada Web Group
Estrada Web Group
Estrada Web Group Estrada Web Group
Calificar:
04 octubre SQL

Uso de la función PATINDEX de SQL Server para encontrar la posición de un patrón en una cadena

Uso de la función PATINDEX de SQL Server para encontrar la posición de un patrón en una cadena

Resumen: en este tutorial, aprenderás a usar la función PATINDEX() de SQL Server para encontrar la posición de un patrón en una cadena.

Introducción general de la función PATINDEX() en SQL Server

La función PATINDEX() devuelve la posición de la primera aparición de un patrón en una cadena. La sintaxis de la función PATINDEX() es la siguiente:

PATINDEX ( '%pattern%' , input_string )

La función PATINDEX() acepta dos argumentos:

  • pattern es una cadena de caracteres que se buscará. Puede contener caracteres comodines como % y '_' en el pattern. Los significados de los comodines son los mismos que se usan con el operador LIKE.
  • input_string es una cadena de caracteres en la que se busca el pattern.

PATINDEX() devuelve un número entero que especifica la posición de la primera aparición del pattern en input_string, o cero si no es encontrado el pattern. La función PATINDEX() devolverá NULL si pattern o input_string es NULL.

Ten en cuenta que PATINDEX() busca el patrón en función de la intercalación de la entrada. Si deseas utilizar una intercalación específica, puedes utilizar la cláusula COLLATE explícitamente.

Ejemplos de la función PATINDEX() de SQL Server

Veamos algunos ejemplos del uso de la función PATINDEX().

A) Función PATINDEX() de SQL Server ejemplo simple

Este ejemplo devuelve la posición inicial de la subcadena 'ern' en la cadena 'SQL Pattern Index':

SELECT
    PATINDEX('%ern%', 'SQL Pattern Index') position;

Resultado:

position
-----------
9

(1 row affected)

B) Función PATINDEX() de SQL Server con varios comodines

Este ejemplo utiliza comodines % y _ para encontrar la posición en la que comienza el patrón 'f', seguido de dos caracteres cualesquiera y 'ction' en la cadena 'SQL Server String Function':

SELECT
    PATINDEX('%f__ction%', 'SQL Server String Function') position;

Resultado:

Position
-----------
19

(1 row affected)

C) Uso de la función PATINDEX() de SQL Server con ejemplo de columna de tabla

Este ejemplo busca la posición de la primera aparición del patrón 2018 en los valores de la columna product_name en la tabla production.products de la base de datos de ejemplo.

SELECT    
    product_name,
    PATINDEX('%2018%', product_name) position
FROM    
    production.products
WHERE
    product_name LIKE '%2018%'
ORDER BY
    product_name;

La siguiente imagen muestra el resultado parcial:

PATINDEX SQL Server

En este tutorial, has aprendido a utilizar la función PATINDEX() de SQL Server para encontrar la posición de la primera aparición de un patrón en una cadena.

Compartir:

Cargando...
Descarga el código fuente

Obten el código del sistema de gestión de proyectos.

Shape