好吧我想我上一年而不是前一天,但我需要前一天.
SELECT TO_DATE(TO_CHAR(CURRENT_DATE, 'YYYY-MM-DD'),'YYYY-MM-DD') - 1 FROM Dual
Run Code Online (Sandbox Code Playgroud)
我将它与此格式的日期时间戳进行比较,并希望获得前一天的所有行.
YYYY-MM-DD HH:MM:SS
Run Code Online (Sandbox Code Playgroud)
所以我正在尝试这样的事情
SELECT field,datetime_field
FROM database
WHERE datetime_field > TO_DATE(TO_CHAR(CURRENT_DATE, 'YYYY-MM-DD'),'YYYY-MM-DD') - 1
Run Code Online (Sandbox Code Playgroud)
Eri*_*der 29
sysdate怎么样?
SELECT field,datetime_field
FROM database
WHERE datetime_field > (sysdate-1)
Run Code Online (Sandbox Code Playgroud)
您可以使用删除日期的时间部分TRUNC。
select field,datetime_field
from database
where datetime_field >= trunc(sysdate-1,'DD');
Run Code Online (Sandbox Code Playgroud)
该查询将为您提供日期从昨天开始的所有行。请注意的第二个参数trunc()。您可以使用它来截断日期的任何部分。
如果您的datetime_fied包含'2011-05-04 08:23:54',则将返回以下日期
trunc(datetime_field, 'HH24') => 2011-05-04 08:00:00
trunc(datetime_field, 'DD') => 2011-05-04 00:00:00
trunc(datetime_field, 'MM') => 2011-05-01 00:00:00
trunc(datetime_field, 'YYYY') => 2011-00-01 00:00:00
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
98597 次 |
| 最近记录: |