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