首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何判断企业在BigQuery中的排名是否在第25位呢?

如何判断企业在BigQuery中的排名是否在第25位呢?
EN

Stack Overflow用户
提问于 2022-07-11 06:28:54
回答 1查看 78关注 0票数 -1

我有如下数据:

代码语言:javascript
复制
business_id|business_name|  time_value  | time_bin |yoy_txn_growth
    1111   |     A       |  July 1,2022 |  Monthly |   .43
    2222   |     B       |  July 1,2022 |  Monthly |   .35
    1111   |     A       |  June 1,2022 |  Monthly |   .27
    2222   |     B       |  June 1,2022 |  Monthly |   .25
    1111   |     A       |  May 1,2022  |  Monthly |   .13
    2222   |     B       |  May 1,2022  |  Monthly |   .12
    1111   |     A       |  April 1,2022|  Monthly |   .09
    2222   |     B       |  April 1,2022|  Monthly |   .08
    1111   |     A       |  March 1,2022|  Monthly |   .20
    2222   |     B       |  March 1,2022|  Monthly |   .19
    1111   |     A       |  July 1,2022 | Quarterly|   .49
    2222   |     B       |  July 1,2022 | Quarterly|   .47
    1111   |     A       |  April 1,2022| Quarterly|   .02
    2222   |     B       |  April 1,2022| Quarterly|   .01

我想知道在每一个time_value + time_bin中,一个企业是否处于yoy交易增长的前25个百分点,另外,该业务是否处于yoy交易增长的后25个百分位数。可能会有更多的业务,或者在整个表中只有1种情况(如果是真的,那么在top25和bottom25中都是默认的)。

代码语言:javascript
复制
business_id|business_name|  time_value  | time_bin |yoy_txn_growth| top25perc | bot25perc
    1111   |     A       |  July 1,2022 |  Monthly |   .43        |   TRUE    |   FALSE
    2222   |     B       |  July 1,2022 |  Monthly |   .35        |   FALSE   |   TRUE
    1111   |     A       |  June 1,2022 |  Monthly |   .23        |   TRUE    |   FALSE
    2222   |     B       |  June 1,2022 |  Monthly |   .25        |   FALSE   |   TRUE
    1111   |     A       |  May 1,2022  |  Monthly |   .13        |   TRUE    |   FALSE
    2222   |     B       |  May 1,2022  |  Monthly |   .12        |   FALSE   |   TRUE
    1111   |     A       |  April 1,2022|  Monthly |   .09        |   TRUE    |   FALSE
    2222   |     B       |  April 1,2022|  Monthly |   .08        |   FALSE   |   TRUE
    1111   |     A       |  March 1,2022|  Monthly |   .18        |   TRUE    |   FALSE
    2222   |     B       |  March 1,2022|  Monthly |   .19        |   FALSE   |   TRUE
    1111   |     A       |  July 1,2022 | Quarterly|   .46        |   TRUE    |   FALSE
    2222   |     B       |  July 1,2022 | Quarterly|   .47        |   FALSE   |   TRUE
    1111   |     A       |  April 1,2022| Quarterly|   .02        |   TRUE    |   FALSE
    2222   |     B       |  April 1,2022| Quarterly|   .01        |   FALSE   |   TRUE

我如何在BigQuery中实现这一点?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-07-13 08:54:27

对于您的需求,可以用于获取带有如果条件的百分位数。您可以在下面的查询中尝试获得预期的输出。

查询

代码语言:javascript
复制
SELECT
 *,
IF
 (PERCENTILE_CONT(yoy_txn_growth,
     0.75) OVER(PARTITION BY time_bin, time_value) <yoy_txn_growth,
   TRUE,
   FALSE) AS top25perc,
IF
 (PERCENTILE_CONT(yoy_txn_growth,
     0.25) OVER(PARTITION BY time_bin, time_value)>yoy_txn_growth,
   TRUE,
   FALSE) AS bot25perc
FROM `project.dataset.Percentiletest`
ORDER BY time_value,time_bin

输出

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72934499

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档