W Oracle UPPER()
funkcja zwraca swój argument ze wszystkimi literami pisanymi wielkimi literami.
Składnia
Składnia wygląda tak:
UPPER(char)
Gdzie char
może być dowolnego typu danych CHAR
, VARCHAR2
, NCHAR
, NVARCHAR2
, CLOB
lub NCLOB
.
Przykład
Oto prosty przykład do zademonstrowania:
SELECT UPPER('speak louder please')
FROM DUAL;
Wynik:
UPPER('SPEAKLOUDERPLEASE') _____________________________ SPEAK LOUDER PLEASE
To samo dotyczy przypadku, gdy w argumencie zastosowano wielkość liter:
SELECT UPPER('Speak Louder Please')
FROM DUAL;
Wynik:
UPPER('SPEAKLOUDERPLEASE') _____________________________ SPEAK LOUDER PLEASE
A jeśli argument jest już pisany wielkimi literami, wynik jest taki sam jak dane wejściowe:
SELECT UPPER('SPEAK LOUDER PLEASE')
FROM DUAL;
Wynik:
UPPER('SPEAKLOUDERPLEASE') _____________________________ SPEAK LOUDER PLEASE
Wartości puste
Przekazywanie null
zwraca null
:
SET NULL 'null';
SELECT UPPER(null)
FROM DUAL;
Wynik:
UPPER(NULL) ______________ null
Domyślnie SQLcl i SQL*Plus zwracają spację, gdy null
występuje w wyniku polecenia SQL SELECT
oświadczenie.
Możesz jednak użyć SET NULL
aby określić inny ciąg do zwrócenia. Tutaj określiłem, że ciąg null
należy zwrócić.
Nieprawidłowa liczba argumentów
Wywołanie UPPER()
bez przekazywania żadnych argumentów zwraca błąd:
SELECT UPPER()
FROM DUAL;
Wynik:
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:
A przekazanie niewłaściwej liczby argumentów skutkuje błędem:
SELECT UPPER('Speak', 'Louder')
FROM DUAL;
Wynik:
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: