gpt4 book ai didi

交叉表查询中的 Postgresql WITH 子句

转载 作者:行者123 更新时间:2023-11-29 11:20:02 25 4
gpt4 key购买 nike

我使用 WITH 子句将大型查询创建为公用表表达式 - month_index。是否可以在交叉表查询的源 sql 中引用此公用表表达式?

当我确实遇到错误时关系“month_index”不存在

WITH month_index AS
(
SELECT ...
)
SELECT * FROM CROSSTAB(
'SELECT rowid AS row_name,
CONCAT(''m'',monthno) AS category,
nic5dindex AS value
FROM month_index',
'*<categorysql>*')
AS ct(..)

我使用 Postgresql 9.3。

最佳答案

您希望将您的 CTE 完全包含在交叉表中。更像这样...您可以在交叉表中使用 CTE,但反之则不行。

    SELECT * 
FROM CROSSTAB(
$$
WITH month_index AS
(
SELECT rowid AS row_name,
CONCAT(''m'',monthno) AS category,
nic5dindex AS value
FROM source_data_table
)
SELECT * FROM month_index
,
'*<categorysql>*'
$$
)
AS ct(..)

关于交叉表查询中的 Postgresql WITH 子句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31971600/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com