当前位置: 代码迷 >> Oracle管理 >> 求教这个句子该如何写
  详细解决方案

求教这个句子该如何写

热度:150   发布时间:2016-04-24 04:06:53.0
求教这个句子该怎么写
select x.url,
       (select z.url_description
          from zzd_sys_url_list z
         where x.url = z.url_list) 功能说明,
       count(x.url) 点击次数       
  from SYS_RUNTIME_REQ_REC_ARCHIVE X
  where to_char(x.enter_time, 'yyyy-mm-dd ') between '2015-03-09' and
       '2015-03-13'
    and to_char(x.exit_time, 'hh24-mi-ss ') - to_char (x.enter_time,'hh24-mi-ss') > '00-00-03' 
 group by x.url
 order by 点击次数 desc;

这是查系统内一些功能在某个时间段的点击次数。 红色部分是想 统计 超过3S的功能
加上这个执行老是报无效数字
求教是怎么回事
------解决思路----------------------
and x.exit_time - x.enter_time > 3/60/60/24
------解决思路----------------------
to_char(x.enter_time, 'yyyy-mm-dd ') between '2015-03-09' and
        '2015-03-13'
 这里最好不要这样写,改为:x.enter_time between to_date('2015-03-09' ,'yyyy-mm-dd') and to_date( '2015-03-13 23:59:59' ,'yyyy-mm-dd hh24:mi:ss')
------解决思路----------------------
where to_char(x.enter_time, 'yyyy-mm-dd ') between '2015-03-09' and
       '2015-03-13'
    and to_char(x.exit_time, 'hh24-mi-ss ') - to_char (x.enter_time,'hh24-mi-ss') > '00-00-03' 

可调整为

 WHERE x.enter_time BETWEEN to_date('2015-03-09','YYYY-MM-DD') AND to_date('2015-03-13','YYYY-MM-DD')
    --此处最好在后面参数to_date,若你enter_time有索引的话,你to_char字段将不会用到索引
   AND x.exit_time- x.enter_time > 3/24/60/60
   --此处3/24(小时)/60(分钟)/60(秒)  代表3秒
  相关解决方案