En Oracle, UPPER()
la función devuelve su argumento con todas las letras en mayúsculas.
Sintaxis
La sintaxis es así:
UPPER(char)
Donde char
puede ser de cualquiera de los tipos de datos CHAR
, VARCHAR2
, NCHAR
, NVARCHAR2
, CLOB
o NCLOB
.
Ejemplo
Aquí hay un ejemplo simple para demostrarlo:
SELECT UPPER('speak louder please')
FROM DUAL;
Resultado:
UPPER('SPEAKLOUDERPLEASE') _____________________________ SPEAK LOUDER PLEASE
Lo mismo se aplica cuando el argumento usa mayúsculas y minúsculas:
SELECT UPPER('Speak Louder Please')
FROM DUAL;
Resultado:
UPPER('SPEAKLOUDERPLEASE') _____________________________ SPEAK LOUDER PLEASE
Y si el argumento ya está en mayúsculas, entonces el resultado es el mismo que la entrada:
SELECT UPPER('SPEAK LOUDER PLEASE')
FROM DUAL;
Resultado:
UPPER('SPEAKLOUDERPLEASE') _____________________________ SPEAK LOUDER PLEASE
Valores nulos
Pasando null
devuelve null
:
SET NULL 'null';
SELECT UPPER(null)
FROM DUAL;
Resultado:
UPPER(NULL) ______________ null
De forma predeterminada, SQLcl y SQL*Plus devuelven un espacio en blanco cada vez que null
ocurre como resultado de un SQL SELECT
declaración.
Sin embargo, puede usar SET NULL
para especificar una cadena diferente a devolver. Aquí especifiqué que la cadena null
debe ser devuelto.
Recuento de argumentos incorrecto
Llamando a UPPER()
sin pasar ningún argumento devuelve un error:
SELECT UPPER()
FROM DUAL;
Resultado:
Error starting at line : 1 in command - SELECT UPPER() FROM DUAL Error at Command Line : 1 Column : 8 Error report - SQL Error: ORA-00909: invalid number of arguments 00909. 00000 - "invalid number of arguments" *Cause: *Action:
Y pasar el número incorrecto de argumentos da como resultado un error:
SELECT UPPER('Speak', 'Louder')
FROM DUAL;
Resultado:
Error starting at line : 1 in command - SELECT UPPER('Speak', 'Louder') FROM DUAL Error at Command Line : 1 Column : 8 Error report - SQL Error: ORA-00909: invalid number of arguments 00909. 00000 - "invalid number of arguments" *Cause: *Action: