Гость
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / выборка по содержимому текстового блоба / 5 сообщений из 5, страница 1 из 1
18.03.2019, 11:28
    #39787628
Cobalt747
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
выборка по содержимому текстового блоба
FB 2.1.7

Код: sql
1.
2.
3.
4.
select count(*)
from TRANZT T
where (COALESCE(CHAR_LENGTH(T.EXCISESTAMP), 0) = 0)
--where COALESCE(EXCISESTAMP, '') = ''


Где у EXCISESTAMP тип
Код: sql
1.
CREATE DOMAIN FBLOBTEXT AS  BLOB SUB_TYPE 1 SEGMENT SIZE 1024 CHARACTER SET UTF8



Думал, что выборка через CHAR_LENGTH будет быстрее
план у них один и тот же - Natural
но вот в 1-ом случае
Fetches from cache = 17_649
а во втором
Fetches from cache = 11_847

Если убрать условие, то
Fetches from cache = 6_045
и кол-во записей 2901

собственно, вопрос - почему через CHAR_LENGTH больше чтений?
...
Рейтинг: 0 / 0
18.03.2019, 11:30
    #39787629
Cobalt747
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
выборка по содержимому текстового блоба
А, ну да, кончено.
Ведь CHAR_LENGTH должен прочитать весь блоб, а для сравнения с пустой строкой достаточно первого символа.
...
Рейтинг: 0 / 0
18.03.2019, 11:46
    #39787640
Симонов Денис
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
выборка по содержимому текстового блоба
Cobalt747,

ИХМО, лучше в триггерах пустые строки превращать в NULL, тогда и сравнение на IS [NOT] NULL будет проще и дешевле
...
Рейтинг: 0 / 0
18.03.2019, 12:12
    #39787665
kdv
kdv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
выборка по содержимому текстового блоба
Cobalt747SEGMENT SIZE 1024
партизаны всё ещё указывают размер сегмента для блоба? Атавизм же.
...
Рейтинг: 0 / 0
18.03.2019, 13:16
    #39787737
Док
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
выборка по содержимому текстового блоба
kdvпартизаны всё ещё указывают размер сегмента для блоба? Атавизм же.
если пользовать "оглуплятор" ©, там этот параметр для блобов выставляется в скрипте создания автоматически :)
...
Рейтинг: 0 / 0
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / выборка по содержимому текстового блоба / 5 сообщений из 5, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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