SELECT 产品编号,日期,收入 FROM 产品预算表 where 日期 between to_char(sysdate,'YYYY')||'-01-01' and 'sysdate'
这个语句是想要查出本年的累计数,现在的出现的问题好像WHERE条件不起作用,求大神帮忙看看,谢谢

解决方案 »

  1.   

    可能是你的session日期格式的问题,直接用date类型来比较吧
    select 产品编号,日期,收入 FROM 产品预算表 where 日期 between trunc(sysdate,'yyyy') and sysdate;
      

  2.   

    SELECT 产品编号,日期,收入 FROM 产品预算表 where 日期 BETWEEN  TO_DATE((to_char(SYSDATE,'yyyy')|| '-01-01'),'yyyy-mm-dd') AND SYSDATE;
      

  3.   

    我日期的格式是char(10), 楼上的执行还是出问题
      

  4.   

    .. where to_date(日期,'yyyy-mm-dd')...就可以了
      

  5.   


    --第一
    select 'x' from dual where to_date('日期字段例:2012-08-08','yyyy-MM-dd') between to_date(to_char(SYSDATE,'yyyy')|| '-01-01','yyyy-MM-dd') and to_char(sysdate,'yyyy-MM-dd'); 
    --第二
    select 'x' from dual
    where to_date('日期字段例:2012-05-05','yyyy-MM-dd') between (to_date(to_char(SYSDATE,'yyyy')|| '-01-01','yyyy-MM-dd')) and to_date(to_char(sysdate,'yyyy-MM-dd') ,'yyyy-MM-dd')
      

  6.   

    --第一
    select 'x' 
    from dual 
    where to_date('日期字段例:2012-08-08','yyyy-MM-dd') 
       between to_date(to_char(SYSDATE,'yyyy')|| '-01-01','yyyy-MM-dd') 
       and to_char(sysdate,'yyyy-MM-dd'); 
    --第二
    select 'x' 
    from dual
    where to_date('日期字段例:2012-05-05','yyyy-MM-dd') 
      between (to_date(to_char(SYSDATE,'yyyy')|| '-01-01','yyyy-MM-dd')) 
      and to_date(to_char(sysdate,'yyyy-MM-dd') ,'yyyy-MM-dd')
      

  7.   

    上面两个有错--第一
    select 'x' from dual where '2012-08-08' between to_char(SYSDATE,'yyyy')|| '-01-01' and to_char(sysdate,'yyyy-MM-dd'); 
    --第二
    select 'x' from dual
    where to_date('2012-05-05','yyyy-MM-dd') between (to_date(to_char(SYSDATE,'yyyy')|| '-01-01','yyyy-MM-dd')) and to_date(to_char(sysdate,'yyyy-MM-dd') ,'yyyy-MM-dd')
      

  8.   

    就是日期格式问题,你的日期是char(10)SELECT 产品编号,日期,收入 FROM 产品预算表 where 日期 between to_char(sysdate,'YYYY')||'-01-01' and to_char(sysdate,'YYYY-MM-DD')