Oracle解決日期格式“01-3月 -18”的顯示問題

本文轉載自:http://www.cnblogs.com/xielong/p/9724126.html

問題描述:

解決方法

1)方法1:調用Oracle函數轉化成日期格式

-- 方法1:調用函數支持轉化成日期格式(每次都要調用轉化方法)---
select A.CODE,to_char(cast(cast(A.BEGINDATE as timestamp) as date),'yyyy-mm-dd hh24:mi:ss') BEGINDATE,
 A.ENDDATE,A.STATE from Dxc_Contract A where STATE=9 and ISENABLE=1

查詢結果

缺點: 每次取數據的時候都要調用轉化函數,比較麻煩

2)方法2:改變session的NLS_DATE_FORMAT值

--方法2 :改變當前會話session的nls_date_format格式 (只支持當前會話)--
 alter session set nls_date_format = 'yyyy-mm-dd hh24:mi:ss';

查詢結果

缺點:只對當前會話有用,而不是當前的sql*plus窗口

 3)方法3:在環境變量添加NLS_DATE_FORMAT參數

--方法3:在window 添加環境變量NLS_DATE_FORMAT,值:YYYY-MM-DD HH24:MI:SS--

3.1)在系統變量中添加新的環境變量

3.2)重啓pl/sql工具,進行查詢

 

這種方式是永久處理NLS_DATE_FORMAT的日期顯示格式,建議用這種方式

參考資料:

https://www.cnblogs.com/carekee/articles/4532905.html

https://blog.csdn.net/qiang_gu/article/details/6723466

平時多記記,到用時才能看看,記錄你的進步,分享你的成果

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章