Hec*_*orC 0 sql oracle datetime where-clause
如何在 Oracle SQL 中使用一年中的一周获取日期?
我需要搜索在本周开始之后创建的条目。目前,我通过做来获得一年中的一周select to_char(sysdate,'WW') from dual;,但后来我做不到
select * from table where date > to_date(to_char(sysdate,'WW'), 'WW') 因为我得到
ORA-01820: format code cannot appear in date input format
01820. 00000 - "format code cannot appear in date input format"
*Cause:
*Action:
Run Code Online (Sandbox Code Playgroud)
您不需要转换为字符串并返回,您可以使用 truncate:
select * from table where date > trunc(sysdate,'WW')
Run Code Online (Sandbox Code Playgroud)
阅读有关该trunc()函数以及如何应用格式模型的更多信息。
请注意,WW 为您提供与一年中的第一天相同的日期,因此现在将提供 2020-09-02,即星期三 - 可能不是您所期望的。当然,这取决于您的要求,但您可能希望使用 IW,它总是从星期一开始,并给出 2020-09-07。如果您有不同的开始日,您可以添加或减去一天,例如,如果您的一周从星期日开始。
| 归档时间: |
|
| 查看次数: |
54 次 |
| 最近记录: |