2015-02-05 48 views
1

我有一个复杂的查询与多个公用表表达式。随着最终的结果集,我是否能够从我使用的公用表格表达式中获取数据。Amazon Redshift:是否可以返回多个结果集?

e.g:与saleID一起获取销售总体%,持续给定的范围

with saleDataRange as 
(select * from saleTable where ... 
) 
with resultset1 as 
(
    ... 
) 
select salePercent from resultset1 where ... 

上面的查询将返回唯一salePercent。但我也需要中间resultset1公用表。任何提示?

+0

PostgreSQL不支持多个结果集,所以我真的怀疑Redshift(它基于经过大量修改的非常旧的PostgreSQL 8.1版本)。 PostgreSQL中的通常解决方案是返回'SETOF REFCURSOR'的函数,但在Redshift中不能这样做。 –

回答

1

我在redshift亚马逊中使用下面2种方法返回了多个不相关的结果集。

  1. 使用CTE,全外连接并使用CTE,UNION ALL和空列

而且我也用临时表来获取分开多个结果ROW_NUM

  • 相关问题