oracle中如何判断某个日期是星期几
to_char(to_date('20041009'),'D')  返回一星期序号1~7
按以上操作运行没有结果,请问‘D’是什么意思?

解决方案 »

  1.   

    to_char(to_date('20041009','yyyymmdd'),'D')
      

  2.   

    SELECT to_char(to_date('20041009','yyyymmdd'),'D') FROM DUALto_char(some_date,'D') returns a number indicating the weekday.
      

  3.   

    也可以这个to_char(to_date('20041009','yyyymmdd'),'day')SQL> select to_char(to_date('20041009','yyyymmdd'),'day') Day from dual;Day
    ------
    星期六也可以to_char(to_date('20041009','yyyymmdd'),'d') 表示序号
    星期天是1,星期一是2,依次.... 星期六是7
    SQL> select to_char(to_date('20041009','yyyymmdd'),'d') D from dual;D
    -
    7
      

  4.   

    TO_CHAR(SYSDATE,'D') 得到:3 ,是老外的星期几 
    TO_CHAR(SYSDATE,'DAY')得到:星期二 ,是中国的星期几 具体见:http://blog.csdn.net/suncrafted/archive/2009/06/16/4273528.aspx
      

  5.   

    TO_CHAR(SYSDATE,'DAY')得到:星期二 ,是中国的星期几 
    受语言环境影响,得出的结果是有点不一样的,所以一般建议用d来判断
    用day来判断,可能会产生问题
    比如在有些机器会出来是
    Tue
    有些会显示星期二
      

  6.   


    6楼正解,全面,中国人还是习惯用day