【发布时间】:2020-09-04 20:54:42
【问题描述】:
假设我有下表
CREATE TABLE IF NOT EXISTS "PROPS" (
"O_TYPE_ID" UUID NOT NULL,
"O_ID" UUID NOT NULL,
"R_TYPE_ID" UUID NOT NULL,
"NAME" VARCHAR NOT NULL,
"VALUE" VARCHAR,
CONSTRAINT PK_PROPS PRIMARY KEY ("O_ID", "R_TYPE_ID", "NAME")
);
现在我有一个列表列表,这是我想用来查询 Postgres 的列表。意思是我有一个
的列表List((O_ID.type, NAME.type))
我想列出所有具有这两种类型组合的记录,我可以使用 IN 运算符的单个列表,在上述情况下如何查询 list os 列表值?一个天真的实现是用两个相等子句和 and 运算符执行 where,但在我的情况下,如果列表太大意味着 IO 太多,您将如何处理以非常简单的方式处理列表列表的场景没有太多IO的优化方式。使用 9.4+ Postgres。
【问题讨论】: