[20181207]sqlplus下顯示資料精度.txt
[20181207]sqlplus下顯示資料精度.txt
--//這個是一個細節問題,昨天看了連結:http://nimishgarg.blogspot.com/2018/12/minus-query-giving-results-on-exactly.html
--//以該網站的數字作為測試說明問題.
1.環境:
SCOTT@book> @ ver1
PORT_STRING VERSION BANNER
------------------------------ -------------- --------------------------------------------------------------------------------
x86_64/Linux 2.4.xx 11.2.0.4.0 Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
create table t1 ( id number);
insert into t1 values (1408.921128110362243397676441929671192844);
insert into t1 values (1408.921128110362243397676441929671192846);
insert into t1 values (1408.921128110362243397676441929671192845);
insert into t1 values (1408.92113);
commit;
SCOTT@book> select * from t1 ;
ID
----------
1408.92113
1408.92113
1408.92113
1408.92113
--//你可以發現在sqlplus下預設僅僅顯示小數點5位.
SCOTT@book> create table t2 as select * from t1 where rownum<=2;
Table created.
SCOTT@book> select * from t1 minus select * from t2;
ID
----------
1408.92113
1408.92113
SCOTT@book> select rowid,t1.* from t1 where id=1408.92113;
ROWID ID
------------------ ----------
AAAWGpAAEAAAAIMAAD 1408.92113
--//你會覺得奇怪僅僅查詢到1條,如果沒有第4條插入,你根本查詢不到.
SCOTT@book> column id format 9999.999999999999999999999999999999999999999999999
SCOTT@book> select rowid,t1.* from t1 ;
ROWID ID
------------------ ---------------------------------------------------
AAAWGpAAEAAAAIMAAA 1408.921128110362243397676441929671192844000000000
AAAWGpAAEAAAAIMAAB 1408.921128110362243397676441929671192846000000000
AAAWGpAAEAAAAIMAAC 1408.921128110362243397676441929671192845000000000
AAAWGpAAEAAAAIMAAD 1408.921130000000000000000000000000000000000000000
--//如果在toad下就不會存在這個問題.
select * from t1;
ID
1408.921128110362243397676441929671192844
1408.921128110362243397676441929671192846
1408.921128110362243397676441929671192845
1408.92113
--//順便說一下,生產系統資料庫number最好定義精度,不然可能佔用空間很大.有一些數字是計算得來.
SCOTT@book> select rowid,t1.id,dump(id) c80 from t1 where rowid='AAAWGpAAEAAAAIMAAE';
ROWID ID C80
------------------ --------------------------------------------------- --------------------------------------------------------------------------------
AAAWGpAAEAAAAIMAAE .333333333333333333333333333333333333333300000 Typ=2 Len=21: 192,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34
--//佔用21位元組.
--//另外可以參考我以前遇到的問題:http://blog.itpub.net/267265/viewspace-1257036/->[20140823]在sqlplus使用copy注意.txt
--//另外我還遇到的情況:http://blog.itpub.net/267265/viewspace-2148998/->[20171220]toad plsql顯示整形的bug.txt
總結:
1.生產系統number型別最好定義精度.
2.sqlplus下顯示資料型別,預設僅僅精確到小數點5位.在工作中注意.
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/267265/viewspace-2284458/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- [20191104]sqlplus下顯示資料精度2.txtSQL
- [20211108]sqlplus資料寬度顯示設定.txtSQL
- [20201121]顯示時間戳高精度版本.txt時間戳
- [20181006]12c sqlplus顯示使用者上次登入時間.txtSQL
- [20200824]12c sqlplus rowprefetch arraysize 顯示行數量的關係.txtSQL
- [20230323]sqlplus #.txtSQL
- [20210722]sqlplus下show recycebin的小問題.txtSQL
- [20190321]smem的顯示缺陷.txt
- [20180811]windows 7 顯示桌面.txtWindows
- [20211020]奇怪lsnrctl status顯示.txt
- [20190215]sqlplus set arraysize.txtSQL
- [20190524]sqlplus 與輸出&.txtSQL
- [20190530]sqlplus preliminary connection.txtSQL
- [20211125]sqlplus生成html格式.txtSQLHTML
- [20211108]sqlplus管道過濾.txtSQL
- element table不顯示任何資料,無資料倒是顯示出無資料的了
- [20190412]bash顯示日期相減.txt
- [20180628]顯示bbed x命令格式.txt
- [20210301]延遲顯示輸出.txt
- [20211123]sqlplus @與@@的區別.txtSQL
- [20221203]sqlplus set trimspool 問題.txtSQL
- [20230417]sqlplus warpped word_warp.txtSQL
- [20221202]sqlplus set trimout 問題.txtSQL
- 資料顯示設定攻略
- [20181207]12c bootstrap$段頭都會記錄在哪裡.txtboot
- [20180312]iostat顯示輸出問題.txtiOS
- [20231207]ls -f的顯示問題.txt
- [20180510]sqlplus array 和 opifch2.txtSQL
- [20191104]sqlplus 管道檔案 過濾.txtSQL
- [20190720]sqlplus 與輸出& 2.txtSQL
- [20211220]sqlplus簡單計算器.txtSQL
- [20211108]sqlplus 本地登入緩慢.txtSQL
- [20210119]sqlplus 12c LOBPREFETCH.txtSQL
- 英偉達:資料顯示顯示卡越好吃雞水平越高
- 資料庫下表和列名顯示資料庫
- window10怎麼顯示資料夾大小 win10 如何顯示資料夾大小Win10
- win10 如何顯示資料夾大小 win10如何直接顯示資料夾大小Win10
- 高精度地形DEM資料下載(NASA資料 12.5米解析度)