Teradata中“日期”数据类型列的最近30天

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Teradata中“日期”数据类型列的最近30天相关的知识,希望对你有一定的参考价值。

我有一个名为Start_Date的列,其数据类型为Date。例如2/27/2016。如何查找Start Date列当前日期的最后30天?

WHERE Start_Date=CURRENT_DATE-30

上面的where子句只给我3/13/2019的值。

对于current_date列,我需要3/13/2019Start Date之间所有日期的值。

答案

尝试

WHERE Start_Date between CURRENT_DATE-30 and CURRENT_DATE
另一答案

如果你的start_date永远不会在未来,那么你可以使用不平等:

WHERE Start_Date >= CURRENT_DATE - 30

我不建议将BETWEEN与日期一起使用 - 因为时间组件(如果有的话)会引起混淆。所以,如果你有未来的日期并希望过滤掉这些日期:

WHERE Start_Date >= CURRENT_DATE - 30 AND
      Start_Date <= CURRENT_DATE

以上是关于Teradata中“日期”数据类型列的最近30天的主要内容,如果未能解决你的问题,请参考以下文章

Teradata日期类型处理

数据库日期字段选择 long和datatime 哪个效率高

SQL Server 2012 如何将列的数据类型从位更改为日期字段?

Teradata 中数据计算和导出

在 Teradata SQL 中查找给定列的哪些行具有不同的值

如何更改 varchar 数据类型列的日期时间格式