Как реализовать поиск в postgresql с Sequelize, в котором будет поиск в ячейке по словам в различном порядке?
На бэк прилетает variants = ['one', 'two']
, по содержимому которой мы должны сделать выборку.
Есть таблица PostgreSQL
id | name | variants
0 | foo | one
1 | bar | two one
2 | foobar | one two
Нужно найти такие строки, в которых будет и 'one' и 'two', не зависимо от порядка.
Пример variants = ['one', 'two'] -> 1,2
Пример variants = ['two', 'one'] -> 1,2
Пример variants = ['one'] -> 0,1,2
Пример variants = ['two'] -> 1,2
Я пробовал
model = await Item.findAndCountAll({
where: sequelize.where(sequelize.fn('regexp_split_to_array', sequelize.fn('lower', sequelize.col('variants')), '\\s+'),
'@>',
variants)})
Но это почему-то не работает от слова совсем
Источник: Stack Overflow на русском