【发布时间】:2017-10-01 17:40:11
【问题描述】:
我正在尝试从分桶列中获取子集,然后获取交叉点。
这将从原始表中选择其他列。
我也愿意进行系列过滤。
下面的代码报告 col1 不存在 - 不确定这是正确的方法。
WITH ranges AS (
SELECT
min(col1) AS c1min,
max(col1) AS c1max,
min(col2) AS c2min,
max(col2) AS c2max
FROM csv_test
),
f1 AS (
SELECT width_bucket(col1,c1min,c1max,12) AS b1
FROM csv_test, ranges
ORDER BY b1 ASC
),
f2 AS (
SELECT width_bucket(col2,c2min,c2max,12) AS b2
FROM csv_test, ranges
ORDER BY b2 ASC
)
SELECT b1, b2, c3, c4, c18
FROM csv_test
WHERE
b1 BETWEEN 0 AND 5
AND
b2 BETWEEN 3 AND 7;
【问题讨论】:
-
你想要类似 Demo 的东西吗?
-
那是完美的。 LATERAL 连接是我需要的。谢谢。
标签: sql postgresql intersection