SQL - FUNKCJA "LENGTH"

0

Dlaczego w SQL-u funkcja LENGTH liczy źle polskie znaki ?

np

SELECT length('żółty') AS 'Podsumowanie' 

wynik
screenshot-20200409190759.png

a angielskie liczy właściwie

SELECT length('zolty') AS 'Podsumowanie' 

wynik
screenshot-20200409190929.png

co trzeba zrobić, żeby ta funkcja liczyła właściwie ?

3

length() liczy wszystko prawidłowo i zwraca rozmiar ciągu w bajtach; Tobie prawdopodobnie chodzi o char_length().

1

Nie podałeś szbd, ale to pewnie coś takiego: https://stackoverflow.com/questions/48262372/how-to-check-actual-unicode-string-length-in-sql-server

Length liczy bajty, więc znaki specjalne mogą być zapisane na kilku.

0

ja znalazłem taką odpowiedź

dzięki

1 użytkowników online, w tym zalogowanych: 0, gości: 1