|
Лишний пробел
|
|||
---|---|---|---|
#18+
Доброго времени суток. Заметил такую особенность. FB 3.0.4.33054 Код: sql 1.
Это запрос для формирования строки улицы. csn.code содержит сокращение ("ул.", "б-р" и т.д.), а ci.name это название ("Ленина" и т.д.). Если после сокращения стоит точка, то пишем без пробела, без точки - пробел. Но в данном запросе пробел ставится всегда. Спасает только: Код: sql 1.
без iif работает нормально, и вот так работает нормально: Код: sql 1.
Вот так опять пробел: Код: sql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
28.11.2019, 08:28 |
|
Лишний пробел
|
|||
---|---|---|---|
#18+
SHS_SHS, Да да, CHAR он такой. А все литералы - CHAR, пока не указано другое. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.11.2019, 09:41 |
|
Лишний пробел
|
|||
---|---|---|---|
#18+
SHS_SHS, Глюк, ага. :) Используй case: Код: sql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
28.11.2019, 10:06 |
|
Лишний пробел
|
|||
---|---|---|---|
#18+
Пардон, тема оказывается уже старая: Возвращаемый результат функции IIF . Просто первый раз столкнулся. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.11.2019, 10:32 |
|
Лишний пробел
|
|||
---|---|---|---|
#18+
Колбаса на виражах Глюк, ага. :) Невежественные дикари всё непонятное тоже объясняли духами и магией. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.11.2019, 10:57 |
|
Лишний пробел
|
|||
---|---|---|---|
#18+
Еще одна неявная особенность в эту же тему: Код: sql 1. 2.
Т.е. получаем пустую строку размером в 7 символов. Тоже самое наблюдается в UDR, когда результат функции varchar(). Проверяешь функцию udr_diff(...) <> '', а она должна вернуть пробелы, но строка пустая с размером > 0. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.11.2019, 13:50 |
|
Лишний пробел
|
|||
---|---|---|---|
#18+
SHS_SHS, это всё известные особенности и даже документированные ... |
|||
:
Нравится:
Не нравится:
|
|||
28.11.2019, 13:56 |
|
Лишний пробел
|
|||
---|---|---|---|
#18+
SHS_SHS, Ууу как всё запущено. Это же основы! Код: sql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
28.11.2019, 13:58 |
|
Лишний пробел
|
|||
---|---|---|---|
#18+
Симонов Денис это всё известные особенности и даже документированные ... |
|||
:
Нравится:
Не нравится:
|
|||
28.11.2019, 13:59 |
|
Лишний пробел
|
|||
---|---|---|---|
#18+
SHS_SHS, в SQL серверах строки сравниваются согласно установленному COLLATE. По умолчанию (и это по стандарту) при сравнении строк завершающие пробелы игнорируются. Если бы было не так, то ты бы задолбался с типом CHAR. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.11.2019, 14:02 |
|
Лишний пробел
|
|||
---|---|---|---|
#18+
Симонов Денис это всё известные особенности и даже документированные Кто ж у нас читает инструкцию до того пока что-то не поломается :). Да если даже и читал, то не запомнилось, т.к. тогда не было необходимости. Так что я не первый, и думаю, не последний, кого удивит такая особенность. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.11.2019, 14:22 |
|
Лишний пробел
|
|||
---|---|---|---|
#18+
SHS_SHS Так что я не первый, и думаю, не последний, кого удивит такая особенность. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.11.2019, 14:26 |
|
Лишний пробел
|
|||
---|---|---|---|
#18+
Симонов Денис в SQL серверах строки сравниваются согласно установленному COLLATE. По умолчанию (и это по стандарту) при сравнении строк завершающие пробелы игнорируются. Если бы было не так, то ты бы задолбался с типом CHAR. Ну а тут я задолбался с пробелами: Код: sql 1. 2. 3.
Как правильно это проверить? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.11.2019, 14:36 |
|
Лишний пробел
|
|||
---|---|---|---|
#18+
SHS_SHS, был тут такой топик пару лет назад. Тогда пришлось вникнуть в суть вопроса и внести сиё в документацию. И даже подсказали человеку как COLLATE правильный создать. Вот только применять его по умолчанию к текущей кодировке не советую, а то много чего поломается. А вот в конкретном месте при сравнении можно ... |
|||
:
Нравится:
Не нравится:
|
|||
28.11.2019, 14:37 |
|
Лишний пробел
|
|||
---|---|---|---|
#18+
SHS_SHSКак правильно это проверить? Никогда не использовать CHAR. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
28.11.2019, 14:38 |
|
Лишний пробел
|
|||
---|---|---|---|
#18+
SHS_SHS, ты ответы правильно читать можешь? Разве я тебе сказал, что char решит твои проблемы? Нет я сказал, что если бы концевые пробелы учитывались при сравнении по умолчанию, то ты бы задолбался с типом char(N), ибо там строки всегда дополняются пробелами до максимальной длины. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.11.2019, 14:41 |
|
Лишний пробел
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov Никогда не использовать CHAR. Так я его стараюсь и не использовать, но оказывается что эта особенность и была сделана для CHAR. Симонов Денис ... Если бы было не так, то ты бы задолбался с типом CHAR. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.11.2019, 14:48 |
|
Лишний пробел
|
|||
---|---|---|---|
#18+
SHS_SHS, Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
Код: plaintext 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
28.11.2019, 14:52 |
|
Лишний пробел
|
|||
---|---|---|---|
#18+
SHS_SHSТак я его стараюсь и не использовать "Try not. Do or do not. There is no try." (c) Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
28.11.2019, 14:52 |
|
Лишний пробел
|
|||
---|---|---|---|
#18+
Симонов Денис ..'a ' collate WIN1251_NOPAD = 'a' collate WIN1251_NOPAD as n3... Оказывается приклеить пробелы сложнее, чем обрубить :). Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.11.2019, 15:05 |
|
Лишний пробел
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov Никогда не использовать CHAR. А char(1) можно? ;) ... |
|||
:
Нравится:
Не нравится:
|
|||
28.11.2019, 16:14 |
|
|
start [/forum/topic.php?fid=40&fpage=18&tid=1560503]: |
0ms |
get settings: |
10ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
51ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
58ms |
get tp. blocked users: |
2ms |
others: | 263ms |
total: | 418ms |
0 / 0 |