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

HEXTORAW () Oracle में फ़ंक्शन

Oracle डाटाबेस में, HEXTORAW() फ़ंक्शन हेक्साडेसिमल को कच्चे मान में परिवर्तित करता है।

सिंटैक्स

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

HEXTORAW(char)

जहां char CHAR में से कोई भी हो सकता है , VARCHAR2 , NCHAR , या NVARCHAR2 डेटा प्रकार।

उदाहरण

यहां एक उदाहरण दिया गया है:

DUAL से
SELECT HEXTORAW('74a5cfe') FROM DUAL;

परिणाम:

074A5CFE

हम उपयोग कर सकते हैं DUMP() वापसी मूल्य के डेटा प्रकार का पता लगाने के लिए कार्य करें:

SELECT DUMP(HEXTORAW('74a5cfe')) FROM DUAL;

परिणाम:

Typ=23 Len=4: 7,74,92,254

Typ=23 हमें बताता है कि रिटर्न वैल्यू टाइप 23 का है, जो कि RAW . के लिए टाइप आईडी है ।

स्पष्ट होने के लिए, यहां एक उदाहरण दिया गया है जो हेक्साडेसिमल स्ट्रिंग और कच्चे मान की तुलना करता है:

SELECT 
    DUMP('123') AS "r1",
    DUMP(HEXTORAW('123')) AS "r2"
FROM DUAL;

परिणाम:

                       r1                    r2 
_________________________ _____________________ 
Typ=96 Len=3: 49,50,51    Typ=23 Len=2: 1,35   

हेक्साडेसिमल मान टाइप 96 का होता है, जो कि CHAR . के लिए टाइप आईडी है और NCHAR

गैर हेक्स वर्ण

ऐसा मान पास करने से जो हेक्साडेसिमल मान नहीं है, एक त्रुटि होती है।

उदाहरण:

SELECT HEXTORAW('z') FROM DUAL;

परिणाम:

Error report -
ORA-01465: invalid hex number

शून्य तर्क

यदि तर्क null है , परिणाम null . है :

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

परिणाम:

null

डिफ़ॉल्ट रूप से, SQLcl और SQL*Plus SQL SELECT के परिणामस्वरूप जब भी कोई रिक्त मान उत्पन्न होता है, तो एक रिक्त स्थान लौटाते हैं बयान।

हालांकि, आप SET NULL का उपयोग कर सकते हैं वापस करने के लिए एक अलग स्ट्रिंग निर्दिष्ट करने के लिए। यहाँ मैंने निर्दिष्ट किया है कि स्ट्रिंग null लौटाया जाना चाहिए।

अवैध तर्क गणना

कॉलिंग HEXTORAW() बिना किसी तर्क के त्रुटि उत्पन्न होती है:

SELECT HEXTORAW()
FROM DUAL;

परिणाम:

SQL Error: ORA-00909: invalid number of arguments
00909. 00000 -  "invalid number of arguments"

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

SELECT HEXTORAW('a', 'b')
FROM DUAL;

परिणाम:

SQL Error: ORA-00909: invalid number of arguments
00909. 00000 -  "invalid number of arguments"

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MONTHS_BETWEEN () Oracle में फ़ंक्शन

  2. लॉन्ग को Varchar2 में कनवर्ट करना

  3. Oracle:CSV फ़ाइल आयात करें

  4. पीएल/एसक्यूएल में लूप का उपयोग करके आप एक ही क्वेरी को कई बार कैसे चला सकते हैं?

  5. Oracle में पिवट टेबल का उपयोग करने की सलाह