Кортеж в предложении IN в MS Access 2003 - PullRequest
2 голосов
/ 20 февраля 2012

Я хотел сделать запрос в MS Access 2003 (или просто sql в VBA), в котором было бы предложение IN , работающее с кортежами , т. Е.

У меня есть столбцы с год и месяц , и я хотел бы извлечь, например, 2010-10 и 2012-03, используя предложение IN . Для сравнения в Postgres это выглядело бы как

SELECT * FROM my_table WHERE (year, month) IN (("2010","10"),("2012","03"));

но это не работает для меня в Access. Да, я храню год и месяц как текст , но это действительно не имеет значения.

Я знаю, что мог бы написать это, используя множество И и ИЛИ , или сделать LEFT JOIN с временной таблицей. Но эти запросы создаются программно, поэтому я хотел сделать их максимально простыми.

1 Ответ

3 голосов
/ 20 февраля 2012

Как насчет:

SELECT * FROM my_table WHERE year & month IN ("201010","201203")
...