no cuenta con funciones muy
sofisticadas de manipulación de tipos
de datos de cadena de caracteres.
Funciones de
Cadena de
Caracteres
Operador Suma
SELECT apellido_empleado + ', ' +
nombre_empleado AS [APELLIDO Y
NOMBRE] FROM Tbl_Nombre
FUNCIÓN COALESCE
Es utilizada para retornar
el primer no NULL de una
lista de expresiones.
SELECT COALESCE(apellido_empleado, '') + ', '
+ COALESCE(nombre_empleado, '') AS
[APELLIDO Y NOMBRE] FROM Tbl_Nombre
FUNCIÓN CONCAT
CONCAT nos permite concatenar varias
cadenas en la misma función. Además,
reemplaza automáticamente cualquier NULL
en sus argumentos por una cadena vacía sin
la necesidad de tener que aclararlo
SELECT CONCAT(apellido_empleado + ', ',
nombre_empleado + ' ', '- OPERARIO') AS
[APELLIDO, NOMBRE Y CARGO] FROM Tbl_Nombre
Substraer Partes de una Cadena
SUBSTRING
SELECT
SUBSTRING('RACING
CAMPEÓN. La Academia
le ganó 1-0 a Godoy Cruz
y se consagró en un
Cilindro colmado de
gente.', 0,15) AS
[SUBSTRING];
LEFT y RIGHT
toman la cantidad de caracteres desde
la izquierda o desde la derecha
SELECT LEFT('RACING CAMPEÓN. La
Academia le ganó 1-0 a Godoy Cruz y
se consagró en un Cilindro colmado
de gente.',14) + ', ' + RIGHT('[...] ante el
grito de la gente: "y la Acadé, y la
Acadé"', 24) AS [LEFT y RIGHT];
CHARINDEX
saber la posición desde dónde
comienza una cadena de caracteres
SELECT CHARINDEX('Academia','RACING CAMPEÓN.
La Academia le ganó 1-0 a Godoy Cruz y se consagró
en un Cilindro colmado de gente.') AS [POSICIÓN];
PATINDEX.
buscar un patrón en vez de
una cadena determinada
% = Sustituye a cero o más caracteres, _ =
sustituye a 1 carácter cualquiera, [lista] =
sustituye a cualquier carácter de la lista,
[^lista] o [!lista] = sustituye a cualquier
carácter excepto los caracteres de la lista.
SELECT PATINDEX('%[0-9]%','RACING CAMPEÓN. La
Academia le ganó 1-0 a Godoy Cruz y se consagró en
un Cilindro colmado de gente.') AS [POSICIÓN];
medir el largo de una
cadena de caracteres
LEN
Para obtener el número de
caracteres en una cadena
utilizamos la función
SELECT LEN('MILAN CAMPEÓN.
La Academia le ganó 1-0 a Juan
de la Cruz y se consagró en un
Cilindro colmado de gente.') AS
[CANTIDAD DE CARACTERES];
DATALENGTH
saber cuánta cantidad
de bytes ocupa esa
cadena de caracteres
SELECT DATALENGTH('MILAN CAMPEÓN. La Academia le ganó
1-0 a Juan de la Cruz y se consagró en un Cilindro
Nomenclatura colmado de gente.') AS [CANTIDAD DE BYTES];
modificar una cadena
de caracteres
REPLACE
REPLICATE
STUFF.
REPLICATE nos multiplica
’RACING CAMPEÓN! 2 veces.
Luego REPLACE reemplaza
’RACING’ por ’EL PORVENIR’.
Por último, la función STUFF
altera 100 caracteres desde
el caracter número 42 por ‘
GERLI ESTÁ DE FIESTA!’
SELECT STUFF(REPLACE(REPLICATE('RACING CAMPEÓN!
',2) + N'. La Academia le ganó 1-0 a Godoy Cruz y se
consagró en un Cilindro colmado de gente.', 'RACING',
'EL PORVENIR'), 42, 100, ' GERLI ESTÁ DE FIESTA!') AS
[REPLACE, REPLICATE, STUFF];
Dar un formato
determinado
UPPER
LOWER
LTRIM
RTRIM
LTRIM y RTRIM nos quitan los espacios vacíos a
izquierda y derecha. UPPER nos pasa todo a
mayúsculas y LOWER a minúsculas.
SELECT LTRIM(RTRIM(UPPER(' HOLA a TodOS, '))) + RTRIM(LOWER(' SEAn ')) +
RTRIM(UPPER(' bienVenidos ')) AS [UPPER, LOWER, LTRIM, RTRIM];