#sql #postgresql #vector
#sql #postgresql #вектор
Вопрос:
Я хочу выполнить запрос, но ищу более одного ключевого слова, например
Select "Accession_Number" from Works where to_tsvector("Description") @@ to_tsquery('music') OR @@ to_tsquery('chair') OR to_tsquery('garb');
Каков наилучший способ сделать это?
Ответ №1:
Я предполагаю, что ваш DDL выглядит примерно так:
create table Works
(
"Accession_Number" serial,
"Description" text,
primary key ("Accession_Number")
);
insert into Works
("Description")
values
('lorem ipsum dolor garb sit'),
('brown fox chases music'),
('hello do you remember me chair'),
('what is this Description');
Для поиска по нескольким столбцам определенного ключевого слова у вас есть несколько вариантов.
Следующий запрос показывает использование регулярных выражений POSIX
select "Accession_Number",
"Description"
from Works
where "Description" ~ '(music|chair|garb)';
Вы также можете использовать LIKE или ПОХОЖИЕ НА.