[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
- windows環境下sqlplus中date資料顯示格式_to_dateWindowsSQL
- [20211108]sqlplus資料寬度顯示設定.txtSQL
- sqlplus 顯示控制SQL
- SQLPLUS顯示亂碼SQL
- [20201121]顯示時間戳高精度版本.txt時間戳
- [20180130]sqlplus欄位顯示問題.txtSQL
- sqlplus中調節顯示SQL
- element table不顯示任何資料,無資料倒是顯示出無資料的了
- myeclipse顯示web-inf下的classes資料夾EclipseWeb
- 資料顯示設定攻略
- Oracle - SQLPlus中文顯示亂碼問題OracleSQL
- 設定sqlplus顯示字元 防止誤操作SQL字元
- sqlplus 顯示問號,解決辦法SQL
- rlwrap sqlplus下的回顯工具SQL
- Mozilla官方資料:資料顯示微軟導致Firefox下載量下滑63%微軟Firefox
- sqlplus顯示規格的各種設定SQL
- oracle sqlplus中文顯示亂碼的問題OracleSQL
- Oracle sqlplus設定顯示格式命令詳解OracleSQL
- 修改sqlplus中顯示時間日期的格式SQL
- Sqlplus查詢時不能顯示標題欄SQL
- 顯示資料庫所有引數資料庫
- win10 如何顯示資料夾大小 win10如何直接顯示資料夾大小Win10
- window10怎麼顯示資料夾大小 win10 如何顯示資料夾大小Win10
- [20181006]12c sqlplus顯示使用者上次登入時間.txtSQL
- sqlplus與空行.txtSQL
- 微信小程式資料資料繫結顯示NaN微信小程式NaN
- Linux中sqlplus退格顯示“^H” 的解決LinuxSQL
- 數碼管顯示動態資料
- perf 的資料用火焰圖顯示
- ASPxGridView的資料繫結顯示View
- 自定義progressBar顯示靜態資料
- 動態顯示資料庫圖片資料庫
- 修改資料庫的日期顯示格式資料庫
- struts + hibernate 資料集合如何顯示
- 顯示資料庫中表的主鍵資料庫
- [20200824]12c sqlplus rowprefetch arraysize 顯示行數量的關係.txtSQL
- linux下顯示中文Linux