Oracle10g Oracle语句不完整

Oracle10g Oracle语句不完整,oracle10g,Oracle10g,我得到了一个Oracle数据库语句,它在我的脚本中显示了过去7天的数据 声明如下: 代码: 但是,这个输出给了我前几个月数据的结果,以及那一周的数据 引述: 日期时间格式为DDMMYYYY HH:MI 如何仅获取本月数据而不获取前几个月数据将DATETIME改为日期: select * from TABLE_NAME WHERE to_date(DATETIME, 'DDMMYYYY HH24:MI') BETWEEN case when to_char(sysdate, 'dd') >

我得到了一个Oracle数据库语句,它在我的脚本中显示了过去7天的数据

声明如下:

代码:

但是,这个输出给了我前几个月数据的结果,以及那一周的数据

引述: 日期时间格式为DDMMYYYY HH:MI
如何仅获取本月数据而不获取前几个月数据

将DATETIME改为日期:

select * from TABLE_NAME
WHERE  to_date(DATETIME, 'DDMMYYYY HH24:MI') BETWEEN  case when to_char(sysdate, 'dd') > 7 then sysdate-7 else trunc(sysdate,'mm') end AND
       sysdate
ORDER BY DATETIME ASC;

a) 为什么日期时间不属于DTAE类型?b) 为什么是这种格式?订购它意味着什么?如果使用字符串作为日期(不使用,但如果使用),最好使用
yyyymmddhh24mi
执行上述语句时会出现以下错误“ORA-01849:hour必须介于1和12之间”@user1292831-我修正了我的答案这是给我从1日开始的整个月份的数据,而不是前一周的数据系统日期格式是mm/dd/yyyy HH:MI:SSC当前系统日期3/26/2012 1:39:03 PM,最后一条记录的日期时间是14012012 20:51@user1292831-对不起我的打字错误。。。将“mm”更改为“dd”
select * from TABLE_NAME
WHERE  to_date(DATETIME, 'DDMMYYYY HH24:MI') BETWEEN  case when to_char(sysdate, 'dd') > 7 then sysdate-7 else trunc(sysdate,'mm') end AND
       sysdate
ORDER BY DATETIME ASC;