Fungsi Panjang String MySQL

Fungsi Panjang String MySQL

MySQL memberi kita kumpulan alat dan fungsi bawaan untuk memanipulasi berbagai tipe data dan catatan dalam database. Beberapa fungsi umum dan berguna adalah fungsi String dan operator.

Dalam tutorial ini, kita akan melihat bagaimana menggunakan fungsi MySQL yang telah ditentukan sebelumnya untuk menentukan panjang string.

Dasar

Tanpa menyelam jauh ke dalam set karakter, MySQL mendukung berbagai pilihan set karakter. Setiap set karakter berisi panjang maksimum byte yang dapat disimpan per karakter.

Untuk mempelajari lebih lanjut tentang kumpulan karakter yang didukung dan panjang maksimumnya, gunakan sumber daya yang disediakan di bawah ini:

https://dev.mysql.com/doc/refman/8.0/en/charset-charsets.html

Di MySQL, sebuah string dapat berada di salah satu set karakter yang didukung. Untuk menentukan panjang string, Anda dapat menggunakan metode byte atau metode karakter.

Metode byte mengembalikan panjang string yang ditentukan dalam byte. Jika string berisi satu set karakter 1-byte, panjang string sama dengan jumlah karakter.

Namun, jika string yang ditentukan berisi karakter multi-byte, jumlah karakter tidak sama dengan panjang string.

Menggunakan MySQL CHARACTER_LENGTH()

Untuk mendapatkan panjang string dalam karakter, Anda dapat menggunakan fungsi CHARACTER_LENGTH(). Fungsi ini adalah sinonim dari fungsi CHAR_LENGTH(). Ia bekerja dengan menghitung jumlah karakter dalam string terlepas dari apakah itu karakter byte tunggal atau multi-byte.

Mari kita ambil tabel negara di database sakila. Untuk mendapatkan panjang string nama negara, kita dapat menggunakan kueri sebagai:

SELECT country, char_length(country) AS length
FROM country
ORDER BY length
LIMIT 10;

Kueri di atas harus mengembalikan panjang nama negara.

Menggunakan MySQL PANJANG()

Untuk mendapatkan panjang string dalam byte, kita menggunakan fungsi LENGTH(). Dalam hal ini, fungsi memperhitungkan apakah itu karakter byte tunggal atau multi-byte.

Kita dapat menerapkan contoh di atas seperti yang ditunjukkan dalam kueri di bawah ini:

SELECT country, LENGTH(country) AS length
FROM country
ORDER BY length
LIMIT 10;

Dalam contoh ini, nilainya dalam byte, bukan karakter. Karena contoh di atas menggunakan karakter byte tunggal, Anda mungkin tidak melihat perbedaannya.

Namun, pada karakter multi-byte sebagai nilai Kanji untuk negara, nilainya berbeda.

Pertimbangkan kueri di bawah ini:

SELECT CHAR_LENGTH('国') AS length_in_char;

Setelah kita menjalankan kueri di atas, kita harus mendapatkan panjangnya sebagai 1.

+----------------+
| length_in_char |
+----------------+
|              1 |
+----------------+

Pertimbangkan kueri yang sama menggunakan fungsi length().

SELECT LENGTH('国') AS length_in_bytes;

Dalam hal ini, panjangnya adalah 3.

+-----------------+
| length_in_bytes |
+-----------------+
|               3|
+-----------------+

Kesimpulan

Panduan ini telah menunjukkan kepada Anda cara menggunakan fungsi MySQL bawaan untuk mendapatkan panjang string dalam byte dan karakter.

Terima kasih telah membaca!

Related Posts