powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / строковый индекс
10 сообщений из 10, страница 1 из 1
строковый индекс
    #35321753
Marvin_ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
не могу найти никак - нужно создать индекс по полю VARCHAR(80) на первые 5 символов
...
Рейтинг: 0 / 0
строковый индекс
    #35322739
gardenman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Marvin_ruне могу найти никак - нужно создать индекс по полю VARCHAR(80) на первые 5 символов
Нет в DB2 индексов на функцию как в оракле.
Поэтому создайте в табличку GENERATED ALWAYS поле и насесьте на него индекс.
...
Рейтинг: 0 / 0
строковый индекс
    #35322741
gardenman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
навесьте)) - типа очепятка...:)
...
Рейтинг: 0 / 0
строковый индекс
    #35322788
Mark Barinstein
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: plaintext
1.
2.
3.
set integrity for my_table off;
alter table my_table add my_col_gen varchar( 5 ) generated always as (substr(my_col,  1 ,  5 ));
set integrity for my_table immediate checked force generated;
create index my_table1 on my_table(my_col_gen);
...
Рейтинг: 0 / 0
строковый индекс
    #35323089
TORT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Где по-подробнее почитать про конструкцию generated always as ()?
...
Рейтинг: 0 / 0
строковый индекс
    #35323633
Mark Barinstein
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
TORTГде по-подробнее почитать про конструкцию generated always as ()?В доке !
...
Рейтинг: 0 / 0
строковый индекс
    #35323977
Marvin_ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ясно, спасибо

а как тогда будут запросы выглядеть ?

Например поле stringLong и его сгенерированный индекс stringLongInd на 5 символов. Ищем строку 'значение'

select * from table1 where stringLongInd = 'значе' and stringLong = 'значение'

при этом будет происходит отбор по индексу поля stringLongInd, а потом по полю stringLong. да ?
...
Рейтинг: 0 / 0
строковый индекс
    #35324070
Mark Barinstein
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Marvin_ruа как тогда будут запросы выглядеть ?

Например поле stringLong и его сгенерированный индекс stringLongInd на 5 символов. Ищем строку 'значение'

select * from table1 where stringLongInd = 'значе' and stringLong = 'значение'

при этом будет происходит отбор по индексу поля stringLongInd, а потом по полю stringLong. да ?Теоретически оптимизатор даже при
Код: plaintext
select * from table1 where stringLong = 'значение'
может выбрать индексный план доступа.
...
Рейтинг: 0 / 0
строковый индекс
    #35327606
TORT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mark Barinstein, просто иногда так лень искать самому:)
...
Рейтинг: 0 / 0
строковый индекс
    #35327607
TORT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mark Barinstein, просто иногда так лень искать самому:)
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / строковый индекс
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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