मारियाडीबी में, OCTET_LENGTH() एक अंतर्निहित स्ट्रिंग फ़ंक्शन है जो दिए गए स्ट्रिंग तर्क की लंबाई देता है, जिसे ऑक्टेट (बाइट्स) में मापा जाता है।
OCTET_LENGTH() LENGTHB() . का पर्यायवाची है ।
यह LENGTH() . का पर्याय भी है जब Oracle मोड में न हो (LENGTH() Oracle मोड में अलग तरह से व्यवहार करता है)।
सिंटैक्स
वाक्य रचना इस प्रकार है:
OCTET_LENGTH(str)
जहां str वह स्ट्रिंग है जिसके लिए लंबाई लौटा दी जाएगी।
उदाहरण
यहां एक बुनियादी उदाहरण दिया गया है:
SELECT OCTET_LENGTH('café'); परिणाम:
+-----------------------+
| OCTET_LENGTH('café') |
+-----------------------+
| 5 |
+-----------------------+
इस मामले में, स्ट्रिंग चार वर्ण लंबी थी, लेकिन OCTET_LENGTH() लौटा 5 . ऐसा इसलिए है क्योंकि अंतिम वर्ण दो ऑक्टेट/बाइट्स का उपयोग करता है।
CHAR_LENGTH() से तुलना करें और BIT_LENGTH()
यहां OCTET_LENGTH() के बीच एक त्वरित तुलना की गई है , CHAR_LENGTH() (जो वर्णों . की संख्या लौटाता है स्ट्रिंग में) और BIT_LENGTH() (जो बिट्स . की संख्या लौटाता है स्ट्रिंग में):
SELECT
OCTET_LENGTH('อ'),
CHAR_LENGTH('อ'),
BIT_LENGTH('อ'); परिणाम:
+---------------------+--------------------+-------------------+
| OCTET_LENGTH('อ') | CHAR_LENGTH('อ') | BIT_LENGTH('อ') |
+---------------------+--------------------+-------------------+
| 3 | 1 | 24 |
+---------------------+--------------------+-------------------+
यह थाई वर्ण (อ ) 3 बाइट्स का उपयोग करता है, और इसलिए OCTET_LENGTH() रिटर्न 3 .
CHAR_LENGTH() वर्णों की संख्या लौटाता है (1 ), और BIT_LENGTH() बिट्स की संख्या लौटाता है (24 )।
गैर-स्ट्रिंग
यदि तर्क एक स्ट्रिंग नहीं है, तो इसे एक स्ट्रिंग में बदल दिया जाता है।
यहां एक और उदाहरण दिया गया है जो किसी संख्या का उपयोग करता है:
SELECT OCTET_LENGTH(1234); परिणाम:
+--------------------+ | OCTET_LENGTH(1234) | +--------------------+ | 4 | +--------------------+
अशक्त तर्क
पासिंग null रिटर्न null :
SELECT OCTET_LENGTH(null); परिणाम:
+--------------------+ | OCTET_LENGTH(null) | +--------------------+ | NULL | +--------------------+
अनुपलब्ध तर्क
कॉलिंग OCTET_LENGTH() तर्क पारित किए बिना एक त्रुटि उत्पन्न होती है:
SELECT OCTET_LENGTH(); परिणाम:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'OCTET_LENGTH'