V Oracle je to INITCAP() funkce vrací svůj argument s prvním písmenem každého slova velkým a všemi ostatními písmeny malými.
Pro speciální lingvistické požadavky na převod velkých a malých písmen můžete zkusit NLS_INITCAP() místo toho.
Syntaxe
Syntaxe vypadá takto:
INITCAP(char)
Kde char může být libovolného datového typu CHAR , VARCHAR2 , NCHAR nebo NVARCHAR2 .
Příklad
Zde je jednoduchý příklad k demonstraci:
SELECT INITCAP('ponzi investment house')
FROM DUAL; Výsledek:
INITCAP('PONZIINVESTMENTHOUSE')
__________________________________
Ponzi Investment House Co když předám všechna VELKÁ písmena?
Předání všech velkých písmen nezmění výsledek:
SELECT INITCAP('PONZI INVESTMENT HOUSE')
FROM DUAL; Výsledek:
INITCAP('PONZIINVESTMENTHOUSE')
__________________________________
Ponzi Investment House Nulové hodnoty
Předávání null vrátí null :
SET NULL 'null';
SELECT INITCAP(null)
FROM DUAL; Výsledek:
INITCAP(NULL) ________________ null
Ve výchozím nastavení vrátí SQLcl a SQL*Plus prázdné místo vždy, když null dochází v důsledku SQL SELECT prohlášení.
Můžete však použít SET NULL určit jiný řetězec, který má být vrácen. Zde jsem uvedl, že řetězec null by měl být vrácen.
Nesprávný počet argumentů
Volání INITCAP() bez předání jakýchkoli argumentů vrátí chybu:
SELECT INITCAP()
FROM DUAL; Výsledek:
Error starting at line : 1 in command - SELECT INITCAP() 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 předání nesprávného počtu argumentů má za následek chybu:
SELECT INITCAP('Gosh', 'Dang', 'Investments')
FROM DUAL; Výsledek:
Error starting at line : 1 in command -
SELECT INITCAP('Gosh', 'Dang', 'Investments')
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: