【问题标题】:Is there a function to get the max of two values in Google BigQuery?是否有一个函数可以在 Google BigQuery 中获取两个值的最大值?
【发布时间】:2013-10-03 21:51:14
【问题描述】:

我想得到 2 个整数(或 2 个浮点数)的最大值。

我知道我可以使用这样的 IF 函数来做到这一点: 如果(第 1 列 > 第 2 列,第 1 列,第 2 列)

但是我想知道是否存在这样做的功能,或者是否有计划在未来添加这种功能。

在 MySQL 中有 GREATER 函数可以做到这一点。示例:GREATER(column1, column2)。

【问题讨论】:

    标签: google-bigquery


    【解决方案1】:

    BigQuery 支持

    GREATEST(expr1, expr2, ...) 
    

    返回最大的参数。我已经提交了一个内部错误,以便将此添加到我们的公共文档中。

    【讨论】:

    【解决方案2】:

    目前在 BigQuery 中没有返回两个值中较大者的函数。如果您最终需要在单个查询中计算大量值,则始终可以在子选择中获得更大的值。

    例如:

    SELECT gr 
    FROM (
        SELECT IF(column1 > column2, column1, column2) as gr 
        FROM [my_dataset.my_table])
    WHERE gr > 27
    GROUP BY gr
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-06
      相关资源
      最近更新 更多