【问题标题】:current_timestamp redshiftcurrent_timestamp 红移
【发布时间】:2020-08-18 21:05:57
【问题描述】:

当我从 redshift 中选择 current_timestamp 时,我得到的是一个值列表,而不是一个值。

这是我的 SQL 查询

select current_timestamp 
from stg.table;

有人知道为什么我得到一个值列表而不是单个值吗?

【问题讨论】:

  • 您期待什么?您从表 stg.table 中选择了所有行,但您正在为每个行显示一个常量值(“current_timestamp”)。
  • 哦,你说得对。我只想得到一个值。

标签: sql amazon-web-services datetime amazon-redshift


【解决方案1】:

这是您的查询:

select current_timestamp from stg.table

这会产生与表 stg.table 中的行数一样多的行(因为那是 from 子句),并且单列始终包含每行的当前日期/时间。另一方面,如果表不包含行,则查询不返回任何行。

如果您只想要一行,请使用不带from 子句的标量子查询:

select current_timestamp as my_timestamp

【讨论】:

    【解决方案2】:

    您将收到 stg.table 中每一行对应的一行。根据 RedShift 文档,您应该改用 GETDATE() 或 SYSDATE() 。也许你想要,例如:

    select GETDATE() as my_timestamp
    

    【讨论】:

      猜你喜欢
      • 2016-07-20
      • 2018-03-11
      • 1970-01-01
      • 1970-01-01
      • 2023-01-19
      • 1970-01-01
      • 2014-11-16
      • 2014-02-19
      相关资源
      最近更新 更多