Функциональные индексы в SQL Server - программирование
Подтвердить что ты не робот

Функциональные индексы в SQL Server

Я пытаюсь понять, существуют ли функциональные индексы, подобные тем, которые существуют в Oracle или PostgreSQL, в SQL Server

В PostgreSQL я могу создать индекс на основе функции, используя следующий синтаксис:

CREATE INDEX sample ON "TestDB" (("expression1" || ' ' || "expression2"));

Я нашел статью где я нашел в SQL Server что-то, называемое индексом для вычисленных столбцов. Является ли это индексом на основе функций, как в Oracle/PostgreSQL? Может ли кто-нибудь предоставить мне образец запроса для создания/просмотра такого индекса?

4b9b3361

Ответ 1

Я еще немного исследовал на основе комментария Damien и нашел ответ, который очень близок к совпадению индексов на основе Oracle/PostgreSQL.

У меня есть таблица с именем PARCELS, где я создал новый столбец COMPUTEDPARCELS, используя оператор alter, как указано ниже:

ALTER TABLE [PARCELS] ADD COMPUTEDPARCELS AS CONVERT(CHAR(8), [MAPNO], 112);

И затем создайте индекс в вычисленном столбце:

CREATE INDEX function_index ON [PARCELS](COMPUTEDPARCELS);

Конечно, пример довольно прост, но ведет себя как индекс, основанный на функции.