मारियाडीबी में, 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'