Создать индекс на таблицу с данными из нескольких таблиц и столбцов - PullRequest
0 голосов
/ 08 апреля 2019

Я пытаюсь создать индекс с информацией из различных таблиц.

Table A
  id
  name
  age

Table B
  id
  id_c

Table C
  id
  country

Мой запрос такой:

SELECT A.name, A.age, C.country
FROM "A", "B", "C"
WHERE A.id = B.id AND B.id = c.id

Я могу искать нужную информацию с помощью индекса следующим образом:

SELECT A.name, A.age, C.country
FROM "A", "B", "C"
WHERE A.id = B.id AND B.id = c.id and to_tsvector('simple', f_concat_ws(' ', A.name, A.age, B.country))
@@ plainto_tsquery('simple', 'john 20 australia');

У меня вопрос, как я могу создать индекс для таблицы A с помощью:

f_concat_ws(' ', A.name, A.age, B.country))

Как я только могу

CREATE INDEX people_idx ON "Table A" USING GIN (
       to_tsvector('simple', f_concat_ws(' ', A.name, A.age)));
...