La función SQL UPPER() del lenguaje SQL permite transformar todos los caracteres en mayúsculas de una cadena de caracteres en minúsculas. Por lo tanto, esta función puede ser útil para presentar los resultados de cierta manera.
Sintaxis de la función SQL upper
La sintaxis de una consulta que utiliza esta función SQL upper es la siguiente:
SELECT UPPER('expresión');
expresión: define la cadena de entrada o la expresión de caracteres que se convertirá a mayúsculas. Este valor puede ser una constante, una variable definida por el usuario o una columna. Es bueno asegurarse de que el tipo de datos del parámetro expresión se pueda convertir a varchar. Esto se debe a que la función devuelve el valor varchar o nvarchar.
En SQL server si la configuración del colección de manegement studio, es: SQL_Latin1_General_CP1_ CI _AS, si dice CI entonces SQL Server no distingue entre mayúsculas y minúsculas. Sí su resultado es algo como esto: SQL_Latin1_General_CP1_ CS _AS, CS significa que SQL Server distingue entre mayúsculas y minúsculas.
Si su SQL Server distingue entre mayúsculas y minúsculas. En ese caso, la función inferior puede ser útil para encontrar cadenas que pueden o no estar en mayúsculas. El siguiente ejemplo muestra cómo comparar cadenas poniendo en mayúsculas la columna y los caracteres de la cadena para forzar la misma distinción entre mayúsculas y minúsculas.
Notas
- El argumento de la función debe ser de tipo CHARACTER.
- El resultado es de tipo CHARACTER.
- Si la expresión del argumento se evalúa como NULL, el resultado es NULL.
- Una expresión_char y el resultado pueden contener caracteres de varios bytes.
EJEMPLO de la función SQL upper
Este ejemplo demuestra que todos los caracteres en minúsculas cambiarán a mayúsculas. Como la primera letra ya está en mayúscula, sigue siendo la misma.
SELECT ID, nombre, upper (Nombre) as Nombre FROM Cliente
Ejemplo SQL upper con varias campos
Imagina una aplicación con usuarios. Esta aplicación utiliza una tabla que almacena el nombre, el apellido y la ciudad de cada usuario.
Mostrar resultados con mayúsculas
Es posible mostrar nombres y apellidos en mayúsculas utilizando la siguiente consulta SQL:
SELECT id, UPPER(nombre) AS Nombre_Mayúscula,
UPPER(apellido) AS Apellido_Mayúscula, ciudad
FROM Detalle
Resultado :
id | Nombre_Mayúscula | Apellido_Mayúscula | ciudad |
---|---|---|---|
1 | PEDRO | RODRIGUEZ | Santiago |
2 | BENJAMÍN | ROLLAND | lyon |
3 | ANA | FERNANDEZ | Burdeos |
4 | PABLO | CAMINO | San francisco |
Buscar un nombre en mayúsculas
Imaginemos que el usuario busca un nombre en mayúsculas y sabemos que la tabla almacena los nombres en minúsculas. Para poder encontrar un usuario a partir de su nombre en mayúsculas, entonces bastaría con utilizar la función SQL UPPER() en la cláusula SQL WHERE, así:
SELECT id, Nombre, Apellido, ciudad
FROM Detalle
WHERE UPPER(nombre) = 'PABLO'
Resultado :
id | primer nombre | apellido | ciudad |
---|---|---|---|
4 | Pablo | Camino | San francisco |
Examplo Uso de la función sql upper en una variable..
DECLARE @text VARCHAR(45); SET @text = 'bien por ti'; SELECT @text as Text value UPPER(@text) AS Upper;
Resultado :
Text value | Upper |
---|---|
bien por ti | BIEN POR TI |
Más información
Existe una función que te permite transformar un texto a minúsculas: la función LOWER() .
La función SQL UPPER() funciona en particular bajo MySQL, PostgreSQL, SQLite, SQL server y Oracle. Tenga en cuenta que en MySQL y Oracle también se puede llamar a la función usando el alias UCASE().
Es bueno saberlo: la función SQL UPPER() es algo similar a la función strtoupper() de PHP o toUpperCase() de Java o javascript. Mas información en la pagina oficial de marcrosoft.
Sensible a la configuración regional: la función UPPER puede ser sensible a la configuración regional del sistema operativo en el que se ejecuta la consulta SQL. Esto significa que puede haber caracteres específicos del idioma que no sean convertidos en mayúsculas.