TO_CHAR (SYSDATE, 'YYYYMM') >= TO_CHAR (DATE1, 'YYYYMM')
AND TO_CHAR (SYSDATE, 'YYYYMM') <= TO_CHAR (DATE2, 'YYYYMM')

解决方案 »

  1.   

    colname>=to_number(to_char(kssj,'yyyymm))colname<=to_number(to_char(jssj,'yyyymm))
      

  2.   

    1)to_char(kssj) --> "2003-07"
    2) > to_char(kssj) or > to_char(jssj)
      

  3.   

    TO_CHAR (SYSDATE, 'YYYYMM') >= TO_CHAR (DATE1, 'YYYYMM')
    AND TO_CHAR (SYSDATE, 'YYYYMM') <= TO_CHAR (DATE2, 'YYYYMM')
      

  4.   

    在kssj和jssj中的日期格式都是'2003-7-5','yyyy-mm-dd'这种的
    请问怎么在判断中转成'yyyymm'这种格式啊?
      

  5.   

    我尝试用replace写sql语句,写得很长,但是有些问题:
    select .. from table where .. and replace(to_char(to_date('2003-11-3','yyyy-mm-dd'),'yyyy-mm'),'-','')>=replace(to_char(kssj,'yyyy-mm'),'-','') and replace(to_char(to_date('2003-11-3','yyyy-mm-dd'),'yyyy-mm'),'-','')<=replace(to_char(jssj,'yyyy-mm'),'-','');如果不要最后那个and的内容,也就是:
    select .. from table where .. and replace(to_char(to_date('2003-11-3','yyyy-mm-dd'),'yyyy-mm'),'-','')>=replace(to_char(kssj,'yyyy-mm'),'-','');
    是可以出来正确结果的
    加上最后那个and的内容,就什么都出不来,也不报错,就是出现一个
     2
    敲回车后就变成SQL>了