Соответствующий список значений в нескольких столбцах в Sequel - PullRequest
0 голосов
/ 15 октября 2018

Для таблицы с составным первичным ключом, скажем, a и b.Если у меня есть список пар, к которым я хотел бы запросить, скажем,

pairs = [[1, 1], [2, 2], [2, 1]]

Как я могу отфильтровать, используя их в наборе данных?

Результат в SQL будет выглядеть как

WHERE (a, b) IN ((1, 1), (2, 2), (2, 1))

Существует DB.values(), который можно использовать для выражения правой стороны, но я не уверен, как получить фактическую фильтрацию в наборе данных.

1 Ответ

0 голосов
/ 15 октября 2018
DB[:table].where([:a, :b]=>[[1,1], [2,2], [2,1]])
# SELECT * FROM table WHERE ((a, b) IN ((1, 1), (2, 2), (2, 1)))
...