如何在PL SQL中创建日期开始和结束日期

Sal*_*lik 2 sql oracle plsql

我要做的是创建两个时间戳,一个StartDate时间戳将是09/08/2015 00:00:00一个EndDate时间戳,它应该09/08/2015 23:59:59像在MS SQL中一样容易实现,我无法找到一个Make_Date函数或Add_Days函数来获取其中任何一个Oracle PL SQL中的时间戳.

谁能帮我吗?

MT0*_*MT0 6

而不是使用小数86399 / 86400(在查看代码时需要一些工作来查看为什么选择这些神奇的数字)来获得结束日期,您可以明确说明使用的时间段INTERVALS(这很容易看出你在做什么):

SQL小提琴

Oracle 11g R2架构设置:

查询1:

SELECT TRUNC( CURRENT_DATE ) AS START_DATE,
       TRUNC( CURRENT_DATE ) + INTERVAL '1' DAY - INTERVAL '1' SECOND AS END_DATE
FROM   DUAL
Run Code Online (Sandbox Code Playgroud)

结果:

|                  START_DATE |                    END_DATE |
|-----------------------------|-----------------------------|
| September, 08 2015 00:00:00 | September, 08 2015 23:59:59 |
Run Code Online (Sandbox Code Playgroud)