Vertica ILIKE большой набор данных - PullRequest
0 голосов
/ 09 июля 2019

Я ищу, чтобы искать в большой таблице данных список фраз, содержащихся в другой таблице, но я ищу использовать ILIKE для регулярного поиска текста в таблице a из фраз в таблице b. Таблица b содержит более 8000 фраз, поэтому использование простого ИЛИ ИЛИ «%» слишком сложно. Любые идеи о том, как использовать ILIKE с SELECT * FROM table2?

Ответы [ 2 ]

0 голосов
/ 09 июля 2019

Или вы можете просто:

SELECT
  t1.*
FROM table1 AS t1
JOIN table2 AS t2
  ON t1.searcharg ILIKE t2.phrase
;

Может быть, немного быстрее, чем предлагает Гордон, но я уверен, что не так драматично ...: -]]

0 голосов
/ 09 июля 2019

Вы можете выразить логику как:

select t1.*
from table1 t1
where exists (select 1
              from table2 t2
              where t1.col ilike t2.phrase
             );

Я полагаю, это будет довольно медленно.

...