Rumah  >  Artikel  >  pangkalan data  >  Bagaimana untuk menanyakan panjang aksara dalam mysql

Bagaimana untuk menanyakan panjang aksara dalam mysql

WBOY
WBOYasal
2021-12-27 16:54:2430302semak imbas

Kaedah: 1. Gunakan fungsi length() untuk membuat pertanyaan Unit ialah bait. Gunakan pertanyaan fungsi "char_length()", unitnya ialah aksara, aksara Cina, nombor dan huruf semuanya adalah satu unit aksara.

Bagaimana untuk menanyakan panjang aksara dalam mysql

Persekitaran pengendalian tutorial ini: sistem Windows 10, versi mysql8.0.22, komputer Dell G3.

Cara untuk menanyakan panjang aksara dalam mysql

Mula-mula fahami perbezaan antara length() dan char_length() dalam Mysql.

1), length(): Fungsi length() dalam mysql ialah fungsi terbina dalam yang digunakan untuk mendapatkan panjang rentetan.
 2), char_length(): Fungsi lain untuk menyemak panjang rentetan dalam fungsi terbina dalam mysql ialah char_length().
3) Perbezaan antara dua fungsi ini ialah:

a), length(): Unit ialah bait Di bawah pengekodan utf8, satu aksara Cina ialah tiga bait dan satu nombor atau huruf ialah satu bait . Di bawah pengekodan gbk, aksara Cina mempunyai dua bait dan nombor atau huruf mempunyai satu bait.
b), char_length(): Unit ialah aksara, sama ada aksara Cina, nombor atau huruf, ia dianggap sebagai aksara.

Bagaimana untuk menanyakan panjang aksara dalam mysql

Bagaimana untuk menanyakan panjang aksara dalam mysql

Kembangkan pada perubahan dalam jenis varchar selepas versi MySQL 5.0.3.

1), sebelum MySQL 5.0.3: 0--255 bait, seperti: 20 dalam varchar(20) mewakili bilangan bait Jika pengekodan utf-8 disimpan, hanya 6 aksara Cina boleh disimpan. varchar(n), dengan n mewakili bilangan bait.
Selepas MySQL 5.0.3: 0--65535 bait, varchar(20) mewakili bilangan aksara, tidak kira apa pengekodan, 20 aksara Cina boleh disimpan. Tetapi ia menduduki sehingga 65532 bait (dua bait untuk menyimpan panjang, 1 bait untuk menyimpan panjang jika kurang daripada 255 bait), varchar(n) di mana n mewakili bilangan aksara, seperti varchar (200), sama ada ia Inggeris atau Cina Boleh simpan 200 keping. Untuk perbezaan khusus lain, anda boleh menyemak dalam talian.

4 length()char_length(), yang boleh digunakan untuk menyemak sama ada ia mengandungi aksara Cina.

Untuk menentukan bahawa medan dalam bahasa Inggeris penuh dalam pengekodan utf-8, panjang (medan) = char_length (medan) boleh digunakan.

Pembelajaran yang disyorkan: tutorial video mysql

Atas ialah kandungan terperinci Bagaimana untuk menanyakan panjang aksara dalam mysql. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn