Di MariaDB, OCTET_LENGTH() adalah fungsi string bawaan yang mengembalikan panjang argumen string yang diberikan, diukur dalam oktet (byte).
OCTET_LENGTH() adalah sinonim untuk LENGTHB() .
Ini juga merupakan sinonim untuk LENGTH() ketika tidak dalam mode Oracle (LENGTH() berperilaku berbeda dalam mode Oracle).
Sintaks
Sintaksnya seperti ini:
OCTET_LENGTH(str)
Dimana str adalah string yang panjangnya akan dikembalikan.
Contoh
Berikut ini contoh dasarnya:
SELECT OCTET_LENGTH('café'); Hasil:
+-----------------------+
| OCTET_LENGTH('café') |
+-----------------------+
| 5 |
+-----------------------+
Dalam hal ini, panjang string adalah empat karakter, tetapi OCTET_LENGTH() mengembalikan 5 . Ini karena karakter terakhir menggunakan dua oktet/byte.
Perbandingan dengan CHAR_LENGTH() dan BIT_LENGTH()
Berikut perbandingan singkat antara OCTET_LENGTH() , CHAR_LENGTH() (yang mengembalikan jumlah karakter dalam string) dan BIT_LENGTH() (yang mengembalikan jumlah bit dalam string):
SELECT
OCTET_LENGTH('อ'),
CHAR_LENGTH('อ'),
BIT_LENGTH('อ'); Hasil:
+---------------------+--------------------+-------------------+
| OCTET_LENGTH('อ') | CHAR_LENGTH('อ') | BIT_LENGTH('อ') |
+---------------------+--------------------+-------------------+
| 3 | 1 | 24 |
+---------------------+--------------------+-------------------+
Karakter Thailand ini (อ ) menggunakan 3 byte, dan karenanya OCTET_LENGTH() mengembalikan 3 .
CHAR_LENGTH() mengembalikan jumlah karakter (1 ), dan BIT_LENGTH() mengembalikan jumlah bit (24 ).
Non-String
Jika argumennya bukan string, itu akan diubah menjadi string.
Berikut contoh lain yang menggunakan angka:
SELECT OCTET_LENGTH(1234); Hasil:
+--------------------+ | OCTET_LENGTH(1234) | +--------------------+ | 4 | +--------------------+
Argumen Null
Melewati null mengembalikan null :
SELECT OCTET_LENGTH(null); Hasil:
+--------------------+ | OCTET_LENGTH(null) | +--------------------+ | NULL | +--------------------+
Argumen Tidak Ada
Memanggil OCTET_LENGTH() tanpa meneruskan argumen menghasilkan kesalahan:
SELECT OCTET_LENGTH(); Hasil:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'OCTET_LENGTH'