Oracle
 sql >> डेटाबेस >  >> RDS >> Oracle

COLLATION () Oracle में फंक्शन

Oracle डाटाबेस में, COLLATION() फ़ंक्शन अपने तर्क के लिए व्युत्पन्न संयोजन का नाम देता है।

सिंटैक्स

वाक्य रचना इस प्रकार है:

COLLATION(expr)

जहां expr CHAR . प्रकार के वर्ण स्ट्रिंग का मूल्यांकन करना चाहिए , VARCHAR2 , LONG , NCHAR , या NVARCHAR2

उदाहरण

यहां एक बुनियादी उदाहरण दिया गया है:

SELECT COLLATION('Boat')
FROM DUAL;

परिणाम:

USING_NLS_COMP

उदाहरण COLLATE . के साथ खंड

यहां बताया गया है कि जब हम COLLATE . का उपयोग करते हैं तो क्या होता है कोलाज को स्पष्ट रूप से निर्दिष्ट करने के लिए क्लॉज:

SELECT COLLATION('Boat' COLLATE LATIN_AI) 
FROM DUAL;

परिणाम:

LATIN_AI

NLS_SORT का उपयोग करते समय विचार करें

COLLATION() फ़ंक्शन केवल डेटा-बाउंड कॉलेशन देता है, न कि NLS_SORT द्वारा सेट किए गए डायनेमिक कॉलेशन को पैरामीटर।

उदाहरण:

SELECT COLLATION('Boat' COLLATE USING_NLS_SORT) 
FROM DUAL;

परिणाम:

USING_NLS_SORT

आप SYS_CONTEXT() . का उपयोग कर सकते हैं NLS_SORT का मान लौटाने का कार्य करता है पैरामीटर:

SELECT SYS_CONTEXT('USERENV','NLS_SORT')
FROM DUAL;

परिणाम:

BINARY

हालांकि, कोई भी प्रत्यय जैसे _CI , _AI , और _CS लौटा दिया गया है:

SELECT 
    COLLATION('Boat' COLLATE USING_NLS_SORT_CI) AS "_CI",
    COLLATION('Boat' COLLATE USING_NLS_SORT_CS) AS "_CS",
    COLLATION('Boat' COLLATE USING_NLS_SORT_AI) AS "_AI"
FROM DUAL;

परिणाम:

                 _CI                  _CS                  _AI 
____________________ ____________________ ____________________ 
USING_NLS_SORT_CI    USING_NLS_SORT_CS    USING_NLS_SORT_AI    

शून्य तर्क

null . पास करने पर भी मिलान वापस कर दिया जाता है :

SELECT COLLATION(null)
FROM DUAL;

परिणाम:

USING_NLS_COMP

गलत तर्क गणना

कोई तर्क पारित किए बिना फ़ंक्शन को कॉल करने से त्रुटि होती है:

SELECT COLLATION()
FROM DUAL;

परिणाम:

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

और बहुत अधिक तर्क पारित करने से भी त्रुटि होती है:

SELECT COLLATION('Boat', 'Dang')
FROM DUAL;

परिणाम:

Error starting at line : 1 in command -
SELECT COLLATION('Boat', 'Dang')
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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ओरेकल:मैं ओरेकल एसक्यूएल में हेक्स को दशमलव में कैसे परिवर्तित करूं?

  2. Oracle DB में विदेशी कुंजियों और उनके द्वारा संदर्भित तालिकाओं की सूची

  3. REGEXP_REPLACE और PL/SQL के बिना UUID स्ट्रिंग बनाना

  4. Oracle क्लाइंट ORA-12541:TNS:कोई श्रोता नहीं

  5. Oracle SQL - अधिकतम () NULL मानों के साथ