number資料型別在查詢中的顯示
講到number資料型別在查詢中的預設的顯示格式與長度,我的印象中模糊想起在2014年的那個夏天有看過相應的書講到,
說number資料型別在查詢中預設顯示是10位數的長度,超出10位之後,會以科學計數法格式顯示,設計不到10位長度的
前面會以空格顯示。其實這篇文章的最初想法不是這個,原來要探討的是手機號碼適合用哪種資料型別儲存。
至於number型別在查詢中顯示格式的話題是在測試當中遇到的,順便一起拿來測試。如果誰有更好想法的,可以在評論
分享一下,可以兩個問題一起。
測試過程如下:
----最初的想法:探討手機號碼儲存的資料型別:
--設計表格3個:
--T1:
create table t1(
id number(5)
constraint t1_pk primary key,
name varchar2(10) not null,
tel number(11),
created date);
--T2:
create table t2(
id number(5)
constraint t2_pk primary key,
name varchar2(10) not null,
tel number(12),
created date);
--T3: #該表的Tel欄位採取字元型別
create table t3(
id number(5)
constraint t3_pk primary key,
name varchar2(10) not null,
tel varchar2(11),
created date);
--檢視3個表得表結構:
SQL> desc t1
Name Null? Type
----------------------------------------- -------- ----------------------------
ID NOT NULL NUMBER(5)
NAME NOT NULL VARCHAR2(10)
TEL NUMBER(11)
CREATED DATE
SQL> desc t2
Name Null? Type
----------------------------------------- -------- ----------------------------
ID NOT NULL NUMBER(5)
NAME NOT NULL VARCHAR2(10)
TEL NUMBER(12)
CREATED DATE
SQL> desc t3
Name Null? Type
----------------------------------------- -------- ----------------------------
ID NOT NULL NUMBER(5)
NAME NOT NULL VARCHAR2(10)
TEL VARCHAR2(11)
CREATED DATE
--調整會話時間的顯示格式:
alter session set nls_date_format = 'yyyy-mm-dd hh24:mi:ss';
--分別往3個表T1、T2與T3插入資料:
insert into t1 values(12546,'enmo',13645789452,sysdate);
insert into t1 values(12547,'ocmu',13645789453,sysdate);
insert into t2 values(12548,'ppqq',13645789454,sysdate);
insert into t2 values(12549,'qqpp',13645789456,sysdate);
insert into t3 values(12550,'yyww','13645789456',sysdate);
insert into t3 values(12551,'wwyy','13645789457',sysdate);
--分別檢視3個表的內容:
SQL> select * from t1;
ID NAME TEL CREATED
---------- ---------- ---------- -------------------
12546 enmo 1.3646E+10 2016-10-21 16:29:35
12547 ocmu 1.3646E+10 2016-10-21 16:29:38
SQL> select * from t2;
ID NAME TEL CREATED
---------- ---------- ---------- -------------------
12548 ppqq 1.3646E+10 2016-10-21 16:29:45
12549 qqpp 1.3646E+10 2016-10-21 16:29:47
SQL> select * from t3;
ID NAME TEL CREATED
---------- ---------- ----------- -------------------
12550 yyww 13645789456 2016-10-21 16:30:12
12551 wwyy 13645789457 2016-10-21 16:30:14
從以上的查詢資料看,t1,t2沒有達到我們想看到的設計效果,因為Tel欄位儲存的是11位的手機號碼,只有t3是完整顯示出來11位。
--建立t5表: #設計了tel欄位長度為13,兩位小數,純屬實驗新增對照組需求,實際沒必要
SQL> create table t5(
2 id number(5)
3 constraint t5_pk primary key,
4 name varchar2(10) not null,
5 tel number(13,2),
6 created date);
--檢視錶結構:
Table created.
SQL> desc t5;
Name Null? Type
----------------------------------------- -------- ----------------------------
ID NOT NULL NUMBER(5)
NAME NOT NULL VARCHAR2(10)
TEL NUMBER(13,2)
CREATED DATE
--插入資料:
insert into t5 values(12555,'hhss',13945789455,sysdate);
insert into t5 values(12556,'hhll',13945789456,sysdate);
--檢視錶中的資料:
SQL> select * from t5;
ID NAME TEL CREATED
---------- ---------- ---------- -------------------
12555 hhss 1.3946E+10 2016-10-21 16:51:33
12556 hhll 1.3946E+10 2016-10-21 16:51:40
--檢視兩個欄位的實際長度:
SQL> select length(id),length(tel) from t1;
LENGTH(ID) LENGTH(TEL)
---------- -----------
5 11
5 11
--指定tel欄位顯示的長度:
SQL> col tel for 99999999999;
SQL> select * from t5;
ID NAME TEL CREATED
---------- ---------- ------------ -------------------
12555 hhss 13945789455 2016-10-21 16:51:33
12556 hhll 13945789456 2016-10-21 16:51:40
SQL> select * from t1;
ID NAME TEL CREATED
---------- ---------- ------------ -------------------
12546 enmo 13645789452 2016-10-21 16:29:35
12547 ocmu 13645789453 2016-10-21 16:29:38
有更多想法的朋友,可以在評論了分享。謝謝觀賞!
說number資料型別在查詢中預設顯示是10位數的長度,超出10位之後,會以科學計數法格式顯示,設計不到10位長度的
前面會以空格顯示。其實這篇文章的最初想法不是這個,原來要探討的是手機號碼適合用哪種資料型別儲存。
至於number型別在查詢中顯示格式的話題是在測試當中遇到的,順便一起拿來測試。如果誰有更好想法的,可以在評論
分享一下,可以兩個問題一起。
測試過程如下:
----最初的想法:探討手機號碼儲存的資料型別:
--設計表格3個:
--T1:
create table t1(
id number(5)
constraint t1_pk primary key,
name varchar2(10) not null,
tel number(11),
created date);
--T2:
create table t2(
id number(5)
constraint t2_pk primary key,
name varchar2(10) not null,
tel number(12),
created date);
--T3: #該表的Tel欄位採取字元型別
create table t3(
id number(5)
constraint t3_pk primary key,
name varchar2(10) not null,
tel varchar2(11),
created date);
--檢視3個表得表結構:
SQL> desc t1
Name Null? Type
----------------------------------------- -------- ----------------------------
ID NOT NULL NUMBER(5)
NAME NOT NULL VARCHAR2(10)
TEL NUMBER(11)
CREATED DATE
SQL> desc t2
Name Null? Type
----------------------------------------- -------- ----------------------------
ID NOT NULL NUMBER(5)
NAME NOT NULL VARCHAR2(10)
TEL NUMBER(12)
CREATED DATE
SQL> desc t3
Name Null? Type
----------------------------------------- -------- ----------------------------
ID NOT NULL NUMBER(5)
NAME NOT NULL VARCHAR2(10)
TEL VARCHAR2(11)
CREATED DATE
--調整會話時間的顯示格式:
alter session set nls_date_format = 'yyyy-mm-dd hh24:mi:ss';
--分別往3個表T1、T2與T3插入資料:
insert into t1 values(12546,'enmo',13645789452,sysdate);
insert into t1 values(12547,'ocmu',13645789453,sysdate);
insert into t2 values(12548,'ppqq',13645789454,sysdate);
insert into t2 values(12549,'qqpp',13645789456,sysdate);
insert into t3 values(12550,'yyww','13645789456',sysdate);
insert into t3 values(12551,'wwyy','13645789457',sysdate);
--分別檢視3個表的內容:
SQL> select * from t1;
ID NAME TEL CREATED
---------- ---------- ---------- -------------------
12546 enmo 1.3646E+10 2016-10-21 16:29:35
12547 ocmu 1.3646E+10 2016-10-21 16:29:38
SQL> select * from t2;
ID NAME TEL CREATED
---------- ---------- ---------- -------------------
12548 ppqq 1.3646E+10 2016-10-21 16:29:45
12549 qqpp 1.3646E+10 2016-10-21 16:29:47
SQL> select * from t3;
ID NAME TEL CREATED
---------- ---------- ----------- -------------------
12550 yyww 13645789456 2016-10-21 16:30:12
12551 wwyy 13645789457 2016-10-21 16:30:14
從以上的查詢資料看,t1,t2沒有達到我們想看到的設計效果,因為Tel欄位儲存的是11位的手機號碼,只有t3是完整顯示出來11位。
--建立t5表: #設計了tel欄位長度為13,兩位小數,純屬實驗新增對照組需求,實際沒必要
SQL> create table t5(
2 id number(5)
3 constraint t5_pk primary key,
4 name varchar2(10) not null,
5 tel number(13,2),
6 created date);
--檢視錶結構:
Table created.
SQL> desc t5;
Name Null? Type
----------------------------------------- -------- ----------------------------
ID NOT NULL NUMBER(5)
NAME NOT NULL VARCHAR2(10)
TEL NUMBER(13,2)
CREATED DATE
--插入資料:
insert into t5 values(12555,'hhss',13945789455,sysdate);
insert into t5 values(12556,'hhll',13945789456,sysdate);
--檢視錶中的資料:
SQL> select * from t5;
ID NAME TEL CREATED
---------- ---------- ---------- -------------------
12555 hhss 1.3946E+10 2016-10-21 16:51:33
12556 hhll 1.3946E+10 2016-10-21 16:51:40
--檢視兩個欄位的實際長度:
SQL> select length(id),length(tel) from t1;
LENGTH(ID) LENGTH(TEL)
---------- -----------
5 11
5 11
--指定tel欄位顯示的長度:
SQL> col tel for 99999999999;
SQL> select * from t5;
ID NAME TEL CREATED
---------- ---------- ------------ -------------------
12555 hhss 13945789455 2016-10-21 16:51:33
12556 hhll 13945789456 2016-10-21 16:51:40
SQL> select * from t1;
ID NAME TEL CREATED
---------- ---------- ------------ -------------------
12546 enmo 13645789452 2016-10-21 16:29:35
12547 ocmu 13645789453 2016-10-21 16:29:38
有更多想法的朋友,可以在評論了分享。謝謝觀賞!
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31392094/viewspace-2126923/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- number型別的顯示問題型別
- JS中其他資料型別轉為number資料型別的方法JS資料型別
- Oracle的number資料型別Oracle資料型別
- 【NUMBER】Oracle的NUMBER資料型別特點Oracle資料型別
- ORACLE NUMBER資料型別Oracle資料型別
- MongoDB之資料查詢(分頁顯示)MongoDB
- MYSQL中怎麼查詢LONGBLOB型別資料的大小MySql型別
- 在HQL select查詢語句中自定義查詢結果返回的資料型別資料型別
- 查詢mysql某張表中的所有資料(欄位)型別MySql型別
- JS -- number資料型別詳解JS資料型別
- 如何分頁顯示資料庫查詢結果?資料庫
- MySql資料庫 數值型別的顯示寬度MySql資料庫型別
- 在MongoDB資料庫中查詢資料(上)MongoDB資料庫
- 在 with 查詢中只查詢個別欄位
- Java+MyEclipse+Tomcat (三)配置MySQL及查詢資料顯示在JSP網頁中JavaEclipseTomcatMySqlJS網頁
- mysql查詢顯示技巧MySql
- 在資料庫的查詢與更新中,CHARINDEX與instr的區別?資料庫Index
- Oracle中number型別詳解Oracle型別
- 查詢沒有許可權但資料字典中顯示有許可權
- 資料型別為date作為查詢條件資料型別
- 在資料庫中查詢關鍵字資料庫
- 自主資料型別:在TVM中啟用自定義資料型別探索資料型別
- 在Delphi中處理資料庫日期型欄位的顯示與輸入 (轉)資料庫
- Python 查詢PDF中的指定文字並高亮顯示Python
- 報表的查詢皮膚怎麼顯示在左側?
- 關於Sql server資料型別HierarchyID 資料型別用法和遞迴顯示完整路徑SQLServer資料型別遞迴
- 小技巧:顯示資料庫查詢耗時,改善開發者習慣資料庫
- 實現分頁顯示資料[並按關鍵字查詢]
- Java中的基本資料型別與引用資料型別Java資料型別
- 不同資料型別在程式中的表現形式資料型別
- MongoDB日期型別查詢MongoDB型別
- 關於SpringMVC中如何把查詢資料全轉成String型別SpringMVC型別
- 字典表資料在表單中顯示的方法請教!
- eMarketer:調查顯示22%的女性在假期購物之前會查詢優惠資訊
- JS中的資料型別轉換:String轉換成Number的3種方法JS資料型別
- 將MYSQL資料顯示在QT的tablewidget中/將QT中的資料儲存到MYSQL資料庫中MySqlQT資料庫
- 用sh列表顯示oracle資料庫單條查詢結果(轉)Oracle資料庫
- Java中的資料型別Java資料型別