跟随链接https://wiki.postgresql.org/wiki/Loose_indexscan,我正在尝试通过以下查询将其应用于我的案例:
WITH RECURSIVE t AS (
SELECT MIN(test_table.entity_type) AS col FROM test_table
UNION ALL
SELECT (SELECT MIN(col) FROM test_table WHERE col > t.col)
FROM t WHERE t.col IS NOT NULL
)
SELECT col FROM t WHERE col IS NOT NULL
UNION ALL
SELECT NULL WHERE EXISTS(SELECT 1 FROM test_table WHERE col IS NULL);
但是我得到了错误:
子查询使用来自外部查询的未分组列“ t.col”
您必须使用表名来限定所有出现的col
,以避免产生歧义。