sql >> Database teknologi >  >> RDS >> Oracle

NLS_COLLATION_ID() Funktion i Oracle

I Oracle Database er NLS_COLLATION_ID() funktion returnerer ID'et for en given sortering. Du videregiver sorteringsnavnet, når du kalder funktionen, og det returnerer sorterings-id'et.

Syntaks

Syntaksen ser sådan ud:

NLS_COLLATION_ID(expr)

Hvor expr er sorteringsnavnet af typen VARCHAR2 .

Eksempel

Her er et grundlæggende eksempel:

SELECT NLS_COLLATION_ID('XAZERBAIJANI')
FROM DUAL;

Resultat:

70

Her er nogle flere eksempler:

SELECT 
    NLS_COLLATION_ID('UCA0620_THAI') AS "1",
    NLS_COLLATION_ID('UCA0620_TSPANISH') AS "2",
    NLS_COLLATION_ID('CANADIAN_M') AS "3",
    NLS_COLLATION_ID('FRENCH_M') AS "4"
FROM DUAL;

Resultat:

        1         2       3       4 
_________ _________ _______ _______ 
   208920    208917    4116    4112

Ugyldig sortering

Ved at videregive et ugyldigt sorteringsnavn resulterer det i null :

SET NULL 'null';
SELECT NLS_COLLATION_ID('Oops!')
FROM DUAL;

Resultat:

null

Som standard returnerer SQLcl og SQL*Plus et tomt mellemrum, når null opstår som et resultat af en SQL SELECT udmelding.

Du kan dog bruge SET NULL for at angive en anden streng, der skal returneres. Her specificerede jeg, at strengen null skal returneres.

Nul-argument

Sender null returnerer null :

SET NULL 'null';
SELECT NLS_COLLATION_ID(null)
FROM DUAL;

Resultat:

null

Forkert antal argumenter

Kaldning af funktionen uden at sende nogen argumenter resulterer i en fejl:

SELECT NLS_COLLATION_ID()
FROM DUAL;

Resultat:

Error starting at line : 1 in command -
SELECT NLS_COLLATION_ID()
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:

Og at sende for mange argumenter resulterer også i en fejl:

SELECT NLS_COLLATION_ID('JAPANESE_M', 'THAI_M')
FROM DUAL;

Resultat:

Error starting at line : 1 in command -
SELECT NLS_COLLATION_ID('JAPANESE_M', 'THAI_M')
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:

  1. Kontroller, om filen findes eller ej i sql-serveren?

  2. hvad er escape-sekvensen for bindestreg (-) i PostgreSQL

  3. Sløjfe over resultatsæt i MySQL

  4. Python, Ruby og Golang:A Web Service Application Comparison