SQL> alter session set nls_language='american';Session altered.SQL> select to_char(sysdate,'dd mon yyyy') from dual;TO_CHAR(SYSDAT -------------- 02 nov 2010
SELECT To_Char(SYSDATE,'dd mon yyyy','nls_language=american') FROM dual;
多谢各位,但我执行后怎么显示的是: 03 11月 2010 不是 类似 21 NOV 1956 (中间月份要求是三位的英文)
--1、 SQL> alter session set nls_language='american';--2、 select to_char(SYSDATE,'dd mon yyyy','nls_language=american') FROM dual;
你要的这个结果是美国时间啊,所以你要把你的会话字符集改成american,然后在用to_char(),函数转换即可select to_char(SYSDATE,'dd mon yyyy','nls_language=american') FROM dual;
SQL> alter session set nls_date_language=american --默认是中文的,把会话改成美国 2 /会话已更改。SQL> edi 已写入 file afiedt.buf 1 select to_date('2010/10/12','yyyy/mm/dd'), 2 to_char(to_date('2010/10/12','yyyy/mm/dd'),'dd mon yyyy') 3* from dual SQL> /TO_DATE('201 TO_CHAR(TO_ ------------ ----------- 12-OCT-10 12 oct 2010
SQL> alter session set nls_language='american';Session altered.SQL> select to_char(sysdate,'dd mon yyyy') from dual;TO_CHAR(SYSDAT
--------------
02 nov 2010
03 11月 2010
不是 类似 21 NOV 1956 (中间月份要求是三位的英文)
SQL> alter session set nls_language='american';--2、
select to_char(SYSDATE,'dd mon yyyy','nls_language=american') FROM dual;
SQL> alter session set nls_date_language=american --默认是中文的,把会话改成美国
2 /会话已更改。SQL> edi
已写入 file afiedt.buf 1 select to_date('2010/10/12','yyyy/mm/dd'),
2 to_char(to_date('2010/10/12','yyyy/mm/dd'),'dd mon yyyy')
3* from dual
SQL> /TO_DATE('201 TO_CHAR(TO_
------------ -----------
12-OCT-10 12 oct 2010