powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Непонятки с trim
5 сообщений из 5, страница 1 из 1
Непонятки с trim
    #39932436
Polesov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет всем.

FB 2.5.9.27148

Код: sql
1.
2.
select '<' || cast( trim( cast( '   ABC   ' as blob ) ) as varchar(100) ) || '>'
  from RDB$DATABASE

Результат
Код: powershell
1.
'<   ABC   >'  - пробелы никуда не делись



Код: sql
1.
2.
select '<' || cast( trim( cast( '   ABC   ' as blob sub_type text ) ) as varchar(100) ) || '>'
  from RDB$DATABASE

Результат
Код: powershell
1.
'<ABC>' - пробелов нет


Разница результатов из-за sub_type blob-а.

С уважением, Polesov.
...
Рейтинг: 0 / 0
Непонятки с trim
    #39932449
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Polesov,

а если в бинарном блобе после abc идут нули (#0), а потом еще какие-то байты. Тогда что делать?
blob это не "безразмерный текст", вообще-то. это тупо двоичные данные. Например, тыща нулевых байтов.
...
Рейтинг: 0 / 0
Непонятки с trim
    #39932463
Polesov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdv,

В чем разница с точки зрения содержимого блоба?
Код: sql
1.
2.
cast( '   ABC   ' as blob )
cast( '   ABC   ' as blob sub_type text ) 


Можно ли сказать, что
Код: sql
1.
blob sub_type text

является разновидностью?
Код: sql
1.
blob sub_type binary
...
Рейтинг: 0 / 0
Непонятки с trim
    #39932465
dimitr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
у бинарных данных (как BLOB BINARY, так и [VAR]CHAR OCTETS) padding-байтом является не пробел, а бинарный нуль. А TRIM по умолчанию убирает padding-байт, насколько я помню.

Попробуй указать явно: TRIM(' ' FROM ...).
...
Рейтинг: 0 / 0
Непонятки с trim
    #39932466
Polesov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dimitr
у бинарных данных (как BLOB BINARY, так и [VAR]CHAR OCTETS) padding-байтом является не пробел, а бинарный нуль

Понятно. Спасибо.
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Непонятки с trim
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]