2013-07-08 11 views
5
select 

length('abcdefg') english, 
length('가나다라마바사') korean 

from dual 

Powraca poniżej.mysql Długość() dla różnych języków zwraca inny rozmiar

english korean 
7  21 

Czy istnieje funkcja zwracająca liczbę znaków, a nie bajty znakowe?

mam na myśli to, co jest mi potrzebne

english korean 
7  7 
+0

Spójrz na to pytanie: http://stackoverflow.com/questions/1734334/mysql-length-vs-char-length –

Odpowiedz

1

Zobacz the manual:

Zwraca długość łańcucha str, mierzona w bajtach. Wielobajtowy znak liczy się jako wiele bajtów. Oznacza to, że do łańcucha zawierającego pięć znaków 2-bajtowych, długość() zwraca 10, natomiast CHAR_LENGTH() zwrotów 5.

CHAR_LENGTH() będą robić to, co chcesz.

Powiązane problemy