gpt4 book ai didi

postgresql - Amazon Redshift 日期比较

转载 作者:行者123 更新时间:2023-11-29 11:47:25 26 4
gpt4 key购买 nike

我收到一条错误消息“Amazon Redshift 表不支持指定的类型或函数(每个 INFO 消息一个)”。我不确定原因,也无法在其他任何地方找到任何支持。

我正在尝试过滤或删除当前日期在特定日期之后的行。我创建了一个非常简单的示例。

表“tmp”有一列“date”,其中一行的值为“2016-01-01”。

我想删除该行,因为它是 future 的日期。

所以我的查询是:

DELETE FROM "tmp" WHERE TO_DATE((NOW()),'YYYY-MM-DD HH:MI:SS') < "date";

但是我得到了错误:

"Specified types or functions (one per INFO message) not supported on Amazon Redshift tables."

我还尝试将“日期”列转换为 DATE 数据类型,但出现同样的错误。

我也尝试了函数 "DATE_CMP"做 bool 比较

SELECT DATE_CMP((TO_DATE(NOW(),'YYYY-MM-DD HH:MI:SS')),"date"::DATE), "date" 
FROM "tmp"

但这产生了同样的错误。

谁能帮我看看这是为什么?我在 Redshift 文档中唯一能找到的是 here但它似乎并没有真正提到任何相关内容。

最佳答案

to_date(now(), ...) 没有意义。 now() 已经是一个date,没有必要将它转换成一个。

条件“当前日期在某个日期之后”可以写成:

delete from tmp
where current_date > "date";

所有日期函数都记录在此处:http://docs.aws.amazon.com/redshift/latest/dg/Date_functions_header.html


date 是一个糟糕的列名称。一方面是因为它也是一个关键字,但更重要的是它没有记录该列包含的内容。开始日期?结束日期?截止日期?访问日期?发票日期?

关于postgresql - Amazon Redshift 日期比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34519484/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com