SELECT (sysdate-visit_time<INTERVAL '1' day to day) FROM a_data_visit;sysdate 系统时间
visit_time 访问时间
INTERVAL '1' day to day 时间间隔  1天
但是这语句总是提示缺少右刮号?高手指教才能查询出比较boolean值

解决方案 »

  1.   

    你看一下 select sysdate - visit_time from a_data_visit ; 的结果。如果加结果,那可以用 select case when sysdate - visit_time < 1 then .....else ....end 
    from a_data_visit;
      

  2.   

    什么意思?
    这样?
    SELECT case when (sysdate-visit_time) <INTERVAL then 'true' else 'false' end FROM a_data_visit; 
      

  3.   

    不能用“<”来直接取得Boolean的比较结果
      

  4.   

    谢谢楼上的高手了
    最后的语句如下  SELECT case when (sysdate-visit_time)<1 then 'true' else 'false' end FROM a_data_visit;在oracle中sysdate-visit_time得出的好像不是时间了 而是number了
    所以再和INTERVAL比较就因数据类型错误,所以时间间隔1天  就直接写 1