Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Почему len(' ')=0, а не 1?  [new]
Евгешка
Member

Откуда: Калининград
Сообщений: 41
Собственно, длина строки из любого количества пробелов равна 0.
Пробел разве не символ?
26 ноя 04, 20:51    [1140536]     Ответить | Цитировать Сообщить модератору
 Re: Почему len(' ')=0, а не 1?  [new]
Alexey Kudinov
Member

Откуда:
Сообщений: 13624
Евгешка
Собственно, длина строки из любого количества пробелов равна 0.
Пробел разве не символ?
Смотря как считать
SELECT LEN(' '),DATALENGTH(' ')
см. также настройку SET ANSI_PADDING
26 ноя 04, 21:01    [1140576]     Ответить | Цитировать Сообщить модератору
 Re: Почему len(' ')=0, а не 1?  [new]
GreenSunrise
Member

Откуда:
Сообщений: 12310
BOL:
LEN
Returns the number of characters, rather than the number of bytes, of the given string expression, excluding trailing blanks.

Так было задумано разработчиками. Но это как "Сол и фасол пишутся с мягким знаком, а вилька и тарелька без. Понять это невозможно, это надо просто запомнить!" :-)
27 ноя 04, 10:59    [1141103]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить