我们如何在 Snowflake 中使用子查询,从 (select....) 中选择列失败

Posted

技术标签:

【中文标题】我们如何在 Snowflake 中使用子查询,从 (select....) 中选择列失败【英文标题】:How do we use sub queries in Snowflake, failing at select columns from (select....) 【发布时间】:2019-12-06 14:59:42 【问题描述】:

如何在没有任何问题的情况下运行外部查询。

SELECT DISTINCT TOP (100) PERCENT NBR, Customers, status
FROM (
  SELECT  NBR, Customers, Code AS status
  FROM   CCC AS CS 
  INNER JOIN AAA AS AC ON CCC.B2= ACT.B1 AND CSS.B2 = ACT.B1
) AS rst
WHERE status IN ('A', 'T')

更新

感谢您的回复,我需要前 100 条记录的百分比,请问我如何在查询中使用百分比。

SELECT PERCENT NBR, Customers, status 
FROM ( 
    SELECT NBR, Customers, Code AS status 
    FROM CCC AS CS 
    INNER JOIN AAA AS AC 
        ON CCC.B2= ACT.B1 AND CSS.B2 = ACT.B1 
)AS rst 
WHERE status IN ('A', 'T') )
ORDER BY NBR LIMIT 100

【问题讨论】:

请不要发布您的问题的多个副本,例如***.com/questions/59218213/…(如何在雪花查询中使用百分比关键字) 【参考方案1】:

该查询不需要子查询,但我相信如果您没有在其中使用 TOP (100) PERCENT,它会起作用。这不是 Snowflake 的正确语法。您需要使用 LIMIT。虽然,如果您要求 100%,那么根本不知道为什么要使用 TOP。

如果您有特定的错误消息会有所帮助,但在您的情况下,可能影响您的不是子查询。

【讨论】:

以上是关于我们如何在 Snowflake 中使用子查询,从 (select....) 中选择列失败的主要内容,如果未能解决你的问题,请参考以下文章

Update 语句中的子查询在 Snowflake 中不起作用

Snowflake数据仓库中如何使用内联文件格式从stage中查询数据

SQL 编译错误:无法在 Snowflake 中评估不受支持的子查询类型

雪花中的相关子查询

Snowflake 我们如何在字段数组上运行非透视查询而不是显式声明每个字段?

如何通过查询从Snowflake中创建特定视图的表