Есть две таблички:
Таблица 1 (используется в качестве справочника), содержит 70 тысяч строк:
код1 | код2
Таблица 2 (используется в качестве хранилища данных), содержит 1,5млн.строк:
дата | код1 | данные1| данные2
При этом далеко не все коды из Таблицы 1 используются в Таблице 2 (около 10%).
Соответственно, хочу создать частичный индекс:
CREATE INDEX "tbl1_indx1"
ON "table1"
USING btree
(code1)
where code1 in
(select code1
from "table2"
group by code1)
Однако выпадает следующая ошибка:
********** Ошибка **********
ERROR: cannot use subquery in index predicate
SQL state: 0A000
Что я делаю не так?
Версия Postgresql:
Версия Postgresql: 8.4.1
Нашел в документации, что индексы не поддерживают вложенные подзапросы . Вопрос закрыт.