当前位置: 首页 > 知识库问答 >
问题:

SQL:如何选择红移值最大的列?

耿学义
2023-03-14

谢谢

共有1个答案

白昊乾
2023-03-14

在Redshift中,可以使用master():

select t.*, greatest(value1, value2, value3, value4) as greatest_value
from mytable t

请注意,mastate()(以及linese())忽略null值;另一方面,如果所有值都为null,则结果为null

如果要确定最大值来自哪个列,请使用case表达式:

select t.*, greatest(value1, value2, value3, value4) as greatest_value,
    case greatest(value1, value2, value3, value4)
        when value1 then 'value1'
        when value2 then 'value2'
        when value3 then 'value3'
        when value4 then 'value4'
    end as greatest_column
from mytable t
 类似资料:
  • 问题内容: 我有一个如下查询: 结果如下:中心名称和交换数量 我喜欢从此结果(第二行)中选择最大值,除了排序和选择第一行之外,还有谁能帮助我进行MAX查询。 问题答案: 那应该工作

  • 问题内容: 我在表中有三列:id,街道名称,计数。对于某些ID,不只是一个街道名称。Count告诉将每条街道分配给ID的频率。我怎样才能只获得编号最高的ID和街道名称。 表格示例: 结果应该是这样的: 提前致谢! 问题答案: 您没有指定正在使用的数据库,但是应该可以使用以下数据库: 请参阅带有演示的SQL Fiddle 。注意,您将必须使用MySQL的反引号或数据库使用的任何字符来转义保留字来转义

  • 问题内容: 这个问题已经在这里有了答案 : 获取SQL中另一列的每个值的最通用值 (9个答案) 6年前关闭。 我对SQL刚起步(我正在使用MySQL),需要一些帮助。我目前正在尝试从称为PERSON的表中选择最常见的年龄。假设PERSON的AGE列的值为:10、10、20、20、30。查询应返回值10和20。 以下查询仅检索第一行(20): 我的另一个想法是尝试类似的方法: 这将返回一个错误,指出

  • 问题内容: 好的,因此我对其他解决方案没有任何帮助。所以这就是我想要做的。我需要选择多列的行,其中一列的值是最大值。 这是样本数据 我需要选择整行,其中orderfileid是每个唯一商品编号的最大值 返回的数据集应该看起来像 我想我尝试过可以想到的select max(orderfileid)的每种组合 任何帮助都将被申请。谢谢 问题答案: 您需要在子查询中找到MAX值,然后使用这些结果将其连接

  • 问题内容: 我有一个看起来像这样的报告: 这是通过SQL完成的(特别是T-SQL版本的Server 2005): 我希望该报告仅显示每个工作流程的最早日期: 有任何想法吗?我不知道这一点。我尝试使用嵌套的选择返回最早的托盘日期,然后在WHERE子句中进行设置。如果只有一家公司,这将非常有用: 但是,如果该表中有不止一家公司,那么这显然将行不通。任何帮助表示赞赏! 问题答案: 只需使用

  • 我有下面的数组 这将给出主要结果为,而不是。 总价值是100%概率。数值可以是十进制,也可以是55.55、10.10等,但总的来说是100% 我已经跟踪https://www.geeksforgeeks.org/how-to-get-random-value-out-of-an-array-in-php/ 但这并没有给出预期的完美结果。 所以哪个概率最高应该主要随机选择。 所以结果可以是这样的:5