我发现我们可以从Oracle
具有批量输入的表中检索记录,如下所示:
SELECT
*
FROM
invoices
WHERE
(invoice_id, entity_id) IN
(
(1, 101),
(2, 102),
(3, 102)
)
现在,我需要触发一个查询,其中一列的输入无关紧要,但仍然能够进行批量查询。
例如
SELECT
*
FROM
invoices
WHERE
(invoice_id, entity_id, vendor_id) IN
(
(1, 101, 201),
(2, 102, 202),
-- no criteria on vendor_id for the tuple below
(3, 102)
)
如果我运行此查询,查询引擎会报告以下错误:
ERROR at line 1:
ORA-00920: invalid relational operator
是否可以首先进行这样的查询?如果是这样,怎么做?