Saltar al contenido principal
Página traducida

Esta página se tradujo del inglés con ayuda de IA. Si hay diferencias entre ambas, la versión en inglés es la referencia.

SUBSTRING

Devuelve parte de una expresión de caracteres o binaria. SUBSTR es un alias de SUBSTRING.

Consulte también:
[SELECT] [ Tipos de datos ]


información

Para extraer un campo de un objeto JSON, use la función JSON_EXTRACT.

Sintaxis​

SELECT SUBSTRING(expression, start[, length]) FROM <multipartIdentifier>;
SELECT SUBSTR(expression, start[, length]) FROM <multipartIdentifier>;

Argumentos​

expression
Una cadena ASCII o un BLOB.

Si expression es una cadena, los índices de caracteres hacen referencia a caracteres UTF-8 reales. Si expression es un BLOB, los índices hacen referencia a bytes.

start
Un entero que representa el primer carácter o byte de la subsecuencia de la expresión de entrada que se devuelve. Si start es negativo, el primer carácter de la subcadena se encuentra contando desde la derecha en lugar de desde la izquierda.

El carácter situado más a la izquierda de expression es el número 1.

length
Un valor entero opcional que representa la longitud de la subsecuencia que se devuelve después del valor start. Si se omite length, se devuelven todos los caracteres hasta el final de la cadena o del BLOB especificado por expression.

Si length es negativo, se usa el valor absoluto de length.

Valor(es) devuelto(s)​

Devuelve una cadena o un valor BLOB según el tipo de expression.


Ejemplos​

Devolver los primeros n caracteres de una columna​

SELECT SUBSTRING(name, 1, 5) as "first five chars"
FROM google.compute.instances
WHERE project = 'stackql-demo'
AND zone = 'australia-southeast1-a';

Truncar los primeros n caracteres de una columna​

SELECT SUBSTR(name, 5) as "from char 5"
FROM google.compute.instances
WHERE project = 'stackql-demo'
AND zone = 'australia-southeast1-a';

Devolver los últimos n caracteres de una columna​

SELECT SUBSTRING(name, -5) as "last five chars"
FROM google.compute.instances
WHERE project = 'stackql-demo'
AND zone = 'australia-southeast1-a';

Para obtener más información, consulte https://www.sqlite.org/lang_corefunc.html#substr