SUBSTRING (SSIS)
Devuelve la parte de una expresión de caracteres que empieza en la posición especificada y tiene la longitud especificada. Los parámetros position y length deben ser números enteros.
Sintaxis
SUBSTRING(character_expression, position, length)
Argumentos
character_expression
Expresión de caracteres de la que se pueden extraer caracteres.
position
Entero que especifica el punto en que comienza la subcadena.
length
Entero que especifica la longitud de la subcadena como el número de caracteres.
Tipos de resultado
DT_WSTR
Notas
SUBSTRING utiliza un índice de base uno. Si el valor de position es 1, la subcadena empieza por el primer carácter de character_expression.
SUBSTRING sólo funciona con el tipo de datos DT_WSTR. Un argumento character_expression que sea un literal de cadena o una columna de datos con el tipo de datos DT_STR, se convertirá implícitamente al tipo de datos DT_WSTR antes de que SUBSTRING realice su operación. Los otros tipos de datos deben convertirse explícitamente al tipo de datos DT_WSTR. Para obtener más información, vea Tipos de datos de Integration Services y Conversión de tipos (SSIS).
SUBSTRING devuelve un resultado NULL si el valor del argumento es NULL.
Todos los argumentos de la expresión pueden usar variables y columnas.
El valor del argumento length puede superar la longitud de la cadena. En tal caso, la función devuelve el resto de la cadena.
Ejemplos
Este ejemplo devuelve dos caracteres, empezando por el carácter 4, de un literal de cadena. El resultado devuelto es "ph".
SUBSTRING("elephant",4,2)
Este ejemplo devuelve el resto de una cadena literal, empezando por el cuarto carácter. El resultado devuelto es "phant". Que el valor del argumento length supere la longitud de la cadena no es un error.
SUBSTRING ("elephant",4,50)
Este ejemplo devuelve la primera letra de la columna MiddleName.
SUBSTRING(MiddleName,1,1)
En este ejemplo se utilizan variables en los argumentos position y length. Si el valor de Start es 1 y el de Length es 5, la función devuelve los cinco primeros caracteres de la columna Name.
SUBSTRING(Name,@Start,@Length)
Este ejemplo devuelve los cuatro últimos caracteres de la variable PostalCode, empezando por el sexto carácter.
SUBSTRING (@PostalCode,6,4)
Este ejemplo devuelve una cadena de longitud cero de un literal de cadena.
SUBSTRING ("Redmond",4,0)