Использование подстроки имени столбца при создании индекса в CockroachDB

Переходя от Oracle к CockroachDB, я использую команду создания индекса, как показано ниже:

CREATE INDEX ON "sales" (substring("a",0,19), substring("b",20,2), "c");

Я получаю ошибку:

invalid syntax: statement ignored: unimplemented at or near ")"
CREATE INDEX ON "sales" (substring("a",0,19), substring("b",20,2), "c");

Я также использовал: substr

но ошибка та же.

-

Edit1: ошибка для измененной команды

CREATE INDEX ON "sales" (substring("a",0,19));

будет таким же.

2 ответа

Решение

Вы пытаетесь использовать вычисляемый индекс - индекс с ключами, которые являются более сложными, чем ссылки на столбцы. CockroachDB пока не поддерживает вычисляемые индексы.

Существует открытая проблема для добавления поддержки для вычисляемых индексов:

https://github.com/cockroachdb/cockroach/issues/9682

Таракан-БД Создание INDEX Sypnosis.

Согласно автомату, который проверяет строку для создания индекса в таблице, нет возможности использовать функцию подстроки.

Другие вопросы по тегам