简体   繁体   English

GBQ窗口函数和算术运算

[英]GBQ window function AND arithmetic operations

Does anyone know if it is possible to do any arithmetic operation on a result derived using GBQ window functions? 有谁知道是否可以对使用GBQ窗口函数得出的结果进行任何算术运算?

For example, can I increase row_number by 100 (some number) using pseudocode like this: 例如,我可以使用如下伪代码将row_number增加100(一些数字):

SELECT 100 + ROW_NUMBER() OVER (PARTITION BY X ORDER BY x_id DESC) increased_row_num
FROM Table1
...

You will need to use subquery for that 您将需要使用子查询

SELECT 100 + row_num AS increased_row_num FROM (
SELECT ROW_NUMBER() OVER (PARTITION BY X ORDER BY x_id DESC) AS row_num
FROM Table1
)

but I'we hoped that there is another solution 但我希望还有其他解决方案

With BigQuery Standard SQL expected functionality works now as is 使用BigQuery Standard SQL,预期功能现在可以正常使用

#standardSQL
SELECT 100 + ROW_NUMBER() OVER (PARTITION BY X ORDER BY x_id DESC) increased_row_num
FROM Table1

See Enabling Standard SQL and Migrating from legacy SQL 请参阅启用标准SQL从旧版SQL迁移

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM