新聞中心
SQL是一種用于操作關系型數(shù)據(jù)庫的標準化語言,它允許用戶對數(shù)據(jù)庫進行查詢、添加、修改和刪除操作。在SQL語言中,一個重要的概念是數(shù)據(jù)類型。SQL中的數(shù)據(jù)類型指的是每個數(shù)據(jù)項存儲的數(shù)據(jù)類型,包括整數(shù)、浮點數(shù)、字符串等。本文將針對SQL數(shù)據(jù)庫中的浮點型數(shù)據(jù)類型進行詳細解釋。

創(chuàng)新互聯(lián)建站服務項目包括新干網(wǎng)站建設、新干網(wǎng)站制作、新干網(wǎng)頁制作以及新干網(wǎng)絡營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術優(yōu)勢、行業(yè)經(jīng)驗、深度合作伙伴關系等,向廣大中小型企業(yè)、政府機構等提供互聯(lián)網(wǎng)行業(yè)的解決方案,新干網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟效益。目前,我們服務的客戶以成都為中心已經(jīng)輻射到新干省份的部分城市,未來相信會繼續(xù)擴大服務區(qū)域并繼續(xù)獲得客戶的支持與信任!
一、什么是浮點型數(shù)據(jù)類型
浮點型數(shù)據(jù)類型是指在計算機中存儲和處理浮點數(shù)的數(shù)據(jù)類型。浮點數(shù)是指小數(shù)和科學計數(shù)法表示的數(shù)字,這種數(shù)字無法用整數(shù)來精確表示。由于計算機中的存儲和計算過程是基于二進制的,因此浮點數(shù)需要以特定的格式進行存儲和處理。在SQL數(shù)據(jù)庫中,常用的浮點型數(shù)據(jù)類型包括FLOAT、DOUBLE和DECIMAL。
二、FLOAT類型
FLOAT是SQL中最基本的浮點型數(shù)據(jù)類型之一。它用于存儲單精度浮點數(shù),這種數(shù)據(jù)類型在計算機中占用4個字節(jié)。FLOAT類型可以存儲的范圍是-3.40E+38到3.40E+38,精度范圍為6-7位數(shù)字。
在SQL中,F(xiàn)LOAT類型的取值使用科學計數(shù)法表示。例如,一個FLOAT類型的數(shù)字3.4567E+3表示的是3.4567乘以10的3次方。下面是一個示例,演示如何在SQL中使用FLOAT類型:
CREATE TABLE students (
id INT,
name VARCHAR(255),
score FLOAT
);
INSERT INTO students
(id, name, score)
VALUES
(1, ‘John’, 85.5),
(2, ‘Mary’, 76.2),
(3, ‘David’, 93.8);
在上面的示例中,我們創(chuàng)建了一個名為“students”的表,其中包含id、name和score三個字段。score字段使用了FLOAT類型,用于存儲學生的分數(shù)。
三、DOUBLE類型
DOUBLE是SQL中的另一個浮點型數(shù)據(jù)類型。它用于存儲雙精度浮點數(shù),占用8個字節(jié)。DOUBLE類型可以存儲的范圍是-1.79E+308到1.79E+308,精度范圍為15-16位數(shù)字。
DOUBLE類型比FLOAT類型更精確,但同時也更消耗存儲空間。在某些情況下,DOUBLE類型比FLOAT類型更適合使用。下面是一個示例:
CREATE TABLE accounts (
id INT,
name VARCHAR(255),
balance DOUBLE
);
INSERT INTO accounts
(id, name, balance)
VALUES
(1, ‘John’, 23890.67),
(2, ‘Mary’, 9034.45),
(3, ‘David’, 563309.95);
在上面的示例中,我們創(chuàng)建了一個名為“accounts”的表,其中包含id、name和balance三個字段。balance字段使用了DOUBLE類型,用于存儲用戶的余額。
四、DECIMAL類型
DECIMAL是SQL中的另一個浮點型數(shù)據(jù)類型。它用于存儲高精度的十進制數(shù),占用8到16個字節(jié)。DECIMAL類型可以存儲的范圍是-10^38+1到10^38-1,并且使用者可以自由定義存儲值的總長度和小數(shù)點后的位數(shù),精度范圍可以自由指定,但提高精度會導致存儲空間增加和性能降低。
DECIMAL類型是SQL中最精確的數(shù)據(jù)類型之一,它適用于對精度要求較高,而對存儲空間消耗和計算效率無過多要求的場景。下面是一個示例:
CREATE TABLE orders (
id INT,
name VARCHAR(255),
price DECIMAL(8,2)
);
INSERT INTO orders
(id, name, price)
VALUES
(1, ‘Apple’, 3.25),
(2, ‘Banana’, 2.35),
(3, ‘Grape’, 4.55);
在上面的示例中,我們創(chuàng)建了一個名為“orders”的表,其中包含id、name和price三個字段。price字段使用了DECIMAL類型,用于存儲商品的價格。
五、浮點型數(shù)據(jù)類型的使用
在SQL中,浮點型數(shù)據(jù)類型是十分常見的,因為它們適用于許多場景。以下是幾個浮點型數(shù)據(jù)類型的使用示例:
1. 存儲學生的考試成績,F(xiàn)LOAT和DOUBLE都可以使用。
2. 存儲商品的價格,DECIMAL和DOUBLE都可以使用。
3. 存儲科學或工程計算過程中的精度要求高的計算結果,DECIMAL和DOUBLE都可以使用,但DECIMAL更適合要求更高的場景。
4. 存儲研究或實驗數(shù)據(jù),F(xiàn)LOAT和DOUBLE都可以使用,但DOUBLE更適合要求更高的場景。
浮點型數(shù)據(jù)類型是數(shù)字存儲和計算的重要組成部分,在SQL中使用廣泛。在選擇浮點型數(shù)據(jù)類型時,需要綜合考慮精度、存儲空間和計算效率等因素,選擇最適合自己使用場景的數(shù)據(jù)類型。
相關問題拓展閱讀:
- 請問數(shù)據(jù)庫里的類型的這幾個英語是什么意思?
- sql數(shù)據(jù)庫有哪幾種類型,其拓展名和作用
請問數(shù)據(jù)庫里的類型的這幾個英語是什么意思?
float 浮點
bigint 長整型數(shù)
binary 二進制
bit位,比特
char字符
datetime 日期時間
decimal 十進制
float 浮缺塵動
image 圖像
int取整
money 貨幣
nchar
ntext
numeric 數(shù)字,數(shù)據(jù)
nvarchar 類型
real復數(shù)的實部
alldatetime
allint
allmoney
sql_variant變量結構化查詢語言
text文本
timestamp 時間信息
tinyint 微整型
uniqueidentifier唯一標識符
varbinary 可變二進制
varchar 可變長字符串
有返沖一些不太清楚,可能漏扮殲不夠術語,希望有幫助吧
看看這上面的吧,介紹的很詳細
sql數(shù)據(jù)庫有哪幾種類型,其拓展名和作用
一、 整數(shù)數(shù)據(jù)類型
整數(shù)數(shù)據(jù)類型是最常用的數(shù)據(jù)類型之一。
1、INT (INTEGER)
INT (或INTEGER)數(shù)據(jù)類型存儲從-2的31次方 (-2 ,147 ,483 ,648) 到2的31次方-1 (2 ,147 ,483,647) 之間的所有正負整數(shù)。每個INT 類型的數(shù)據(jù)按4 個字節(jié)存儲,其中1 位表示整數(shù)值的正負號,其它31 位表示整數(shù)值的長度和大小。
2、ALLINT
ALLINT 數(shù)據(jù)類型存儲從-2的15次方( -32, 768) 到2的15次方-1( 32 ,767 )之間的所有正負整數(shù)。每個ALLINT 類型的數(shù)據(jù)占用2 個字節(jié)的存儲空間,其中1 位表示整數(shù)值的正負號,其它15 位表示整數(shù)值的長度和大小。
3、TINYINT
TINYINT數(shù)據(jù)類型存儲從0 到255 之間的所有正整數(shù)。每個TINYINT類型的數(shù)據(jù)占用1 個字節(jié)的存儲空間。
4、BIGINT
BIGINT 數(shù)據(jù)類型存儲從-2^63 (-9 ,223, 372, 036, 854, 775, 807) 到2^63-1( 9, 223, 372, 036 ,854 ,775, 807) 之間的所有正負整數(shù)。每個BIGINT 類型的數(shù)據(jù)占用8個字節(jié)的存儲空間。
二、 浮點數(shù)據(jù)類型
浮點數(shù)據(jù)類型用于存儲十進制小數(shù)。浮點數(shù)值的數(shù)據(jù)在SQL Server 中采用上舍入(Round up 或稱為只入不舍)方式進行存儲。所謂上舍入是指,當(且僅當)要舍入的數(shù)是一個非零數(shù)時,對其保留數(shù)字部分的更低有效位上的數(shù)值加1 ,并進行必要的進位。若一個數(shù)是上舍入數(shù),其絕對值不會減少。如:對3. 分別進行2 位和12位舍入,結果為3.15 和3.。
1、REAL 數(shù)據(jù)類型
REAL數(shù)據(jù)類型可精確到第7 位小數(shù),其范圍為從-3.40E -38 到3.40E +38。 每個REAL類型的數(shù)據(jù)占用4 個字節(jié)的存儲空間。
2、FLOAT
FLOAT數(shù)據(jù)類型可精確到第15 位小數(shù),其范圍為從-1.79E -308 到1.79E +308。 每個FLOAT 類型的數(shù)據(jù)占用8 個字節(jié)的存儲空間。 FLOAT數(shù)據(jù)類型可寫為FLOAT的形式。n 指定FLOAT 數(shù)據(jù)的精度。n 為1到15 之間的整數(shù)值。當n 取1 到7 時,實際上是定義了一個REAL 類型的數(shù)據(jù),系統(tǒng)用4 個字節(jié)存儲它;當n 取8 到15 時,系統(tǒng)認為其是FLOAT 類型,用8 個字節(jié)存儲它。
3、DECIMAL
DECIMAL數(shù)據(jù)類型可以提供小數(shù)所需要的實際存儲空間,但也有一定的限制,您可以用2 到17 個字節(jié)來存儲從-10的38次方-1 到10的38次方-1 之間的數(shù)值??蓪⑵鋵憺镈ECIMAL
>的形式,p 和s 確定了精確的比例和數(shù)位。其中p 表示可供存儲的值的總位數(shù)(不包括小數(shù)點),缺省值為18; s 表示小數(shù)點后的位數(shù),缺省值為0。 例如:decimal (15 5),表示共有15 位數(shù),其中整數(shù)10 位,小數(shù)5。 位表4-3 列出了各精確度所需的字節(jié)數(shù)之間的關系。
4、NUMERIC
NUMERIC數(shù)據(jù)類型與DECIMAL數(shù)據(jù)類型完全相同。
注意:SQL Server 為了和前端的開發(fā)工具配合,其所支持的數(shù)據(jù)精度默認更大為28位。
三、 二進制數(shù)據(jù)類型
1、BINARY
BINARY 數(shù)據(jù)類型用于存儲二進制數(shù)據(jù)。其定義形式為BINARY( n), n 表示數(shù)據(jù)的長度,取值為1 到8000 。在使用時必須指定BINARY 類型數(shù)據(jù)的大小,至少應為1 個字節(jié)。BINARY 類型數(shù)據(jù)占用n+4 個字節(jié)的存儲空間。在輸入數(shù)據(jù)時必須在數(shù)據(jù)前加上字符“0X” 作為二進制標識,如:要輸入“abc ”則應輸入“0xabc ”。若輸入的數(shù)據(jù)過長將會截掉其超出部分。若輸入的數(shù)據(jù)位數(shù)為奇數(shù),則會在起始符號“0X ”后添加一個0,如上述的“0xabc ”會被系統(tǒng)自動變?yōu)椤?x0abc”。
2、VARBINARY
VARBINARY數(shù)據(jù)類型的定義形式為VARBINARY(n)。 它與BINARY 類型相似,n 的取值也為1 到8000, 若輸入的數(shù)據(jù)過長,將會截掉其超出部分。不同的是VARBINARY數(shù)據(jù)類型具有變動長度的特性,因為VARBINARY數(shù)據(jù)類型的存儲長度為實際數(shù)值長度+4個字節(jié)。當BINARY數(shù)據(jù)類型允許NULL 值時,將被視為VARBINARY數(shù)據(jù)類型。
一般情況下,由于BINARY 數(shù)據(jù)類型長度固定,因此它比VARBINARY 類型的處理速度快。
四、 邏輯數(shù)據(jù)類型
BIT: BIT數(shù)據(jù)類型占用1 個字節(jié)的存儲空間,其值為0 或1 。如果輸入0 或1 以外的值,將被視為1。 BIT 類型不能定義為NULL 值(所謂NULL 值是指空值或無意義的值)。
五、 字符數(shù)據(jù)類型
字符數(shù)據(jù)類型是使用最多的數(shù)據(jù)類型。它可以用來存儲各種字母、數(shù)字符號、特殊符號。一般情況下,使用字符類型數(shù)據(jù)時須在其前后加上單引號’或雙引號” 。
1 CHAR
CHAR 數(shù)據(jù)類型的定義形式為CHAR。 以CHAR 類型存儲的每個字符和符號占一個字節(jié)的存儲空間。n 表示所有字符所占的存儲空間,n 的取值為1 到8000, 即可容納8000 個ANSI 字符。若不指定n 值,則系統(tǒng)默認值為1。 若輸入數(shù)據(jù)的字符數(shù)小于n,則系統(tǒng)自動在其后添加空格來填滿設定好的空間。若輸入的數(shù)據(jù)過長,將會截掉其超出部分。
2、NCHAR
NCHAR數(shù)據(jù)類型的定義形式為NCHAR。 它與CHAR 類型相似。不同的是NCHAR數(shù)據(jù)類型n 的取值為1 到4000。 因為NCHAR 類型采用UNICODE 標準字符集(CharacterSet)。 UNICODE 標準規(guī)定每個字符占用兩個字節(jié)的存儲空間,所以它比非UNICODE 標準的數(shù)據(jù)類型多占用一倍的存儲空間。使用UNICODE 標準的好處是因其使用兩個字節(jié)做存儲單位,其一個存儲單位的容納量就大大增加了,可以將全世界的語言文字都囊括在內,在一個數(shù)據(jù)列中就可以同時出現(xiàn)中文、英文、法文、德文等,而不會出現(xiàn)編碼沖突。
3、VARCHAR
VARCHAR數(shù)據(jù)類型的定義形式為VARCHAR 。 它與CHAR 類型相似,n 的取值也為1 到8000, 若輸入的數(shù)據(jù)過長,將會截掉其超出部分。不同的是,VARCHAR數(shù)據(jù)類型具有變動長度的特性,因為VARCHAR數(shù)據(jù)類型的存儲長度為實際數(shù)值長度,若輸入數(shù)據(jù)的字符數(shù)小于n ,則系統(tǒng)不會在其后添加空格來填滿設定好的空間。
一般情況下,由于CHAR 數(shù)據(jù)類型長度固定,因此它比VARCHAR 類型的處理速度快。
4、NVARCHAR
NVARCHAR數(shù)據(jù)類型的定義形式為NVARCHAR。 它與VARCHAR 類型相似。不同的是,NVARCHAR數(shù)據(jù)類型采用UNICODE 標準字符集(Character Set), n 的取值為1 到4000。
六、文本和圖形數(shù)據(jù)類型
這類數(shù)據(jù)類型用于存儲大量的字符或二進制數(shù)據(jù)。
1、TEXT
TEXT數(shù)據(jù)類型用于存儲大量文本數(shù)據(jù),其容量理論上為1 到2的31次方-1 (2, 147, 483, 647)個字節(jié),在實際應用時需要視硬盤的存儲空間而定。
SQL Server 2023 以前的版本中,數(shù)據(jù)庫中一個TEXT 對象存儲的實際上是一個指針,它指向一個個以8KB (8192 個字節(jié))為單位的數(shù)據(jù)頁(Data Page)。 這些數(shù)據(jù)頁是動態(tài)增加并被邏輯鏈接起來的。在SQL Server 2023 中,則將TEXT 和IMAGE 類型的數(shù)據(jù)直接存放到表的數(shù)據(jù)行中,而不是存放到不同的數(shù)據(jù)頁中。 這就減少了用于存儲TEXT 和IMA- GE 類型的空間,并相應減少了磁盤處理這類數(shù)據(jù)的I/O 數(shù)量。
2 NTEXT
NTEXT數(shù)據(jù)類型與TEXT.類型相似不同的,是NTEXT 類型采用UNICODE 標準字符集(Character Set), 因此其理論容量為230-1(1, 073, 741, 823)個字節(jié)。
3 IMAGE
IMAGE數(shù)據(jù)類型用于存儲大量的二進制數(shù)據(jù)Binary Data。 其理論容量為2的31次方-1(2,147,483,647)個字節(jié)。其存儲數(shù)據(jù)的模式與TEXT 數(shù)據(jù)類型相同。通常用來存儲圖形等OLE Object Linking and Embedding,對象連接和嵌入)對象。在輸入數(shù)據(jù)時同BINARY數(shù)據(jù)類型一樣,必須在數(shù)據(jù)前加上字符“0X”作為二進制標識
七、日期和時間數(shù)據(jù)類型
1 DATETIME
DATETIME 數(shù)據(jù)類型用于存儲日期和時間的結合體。它可以存儲從公元1753 年1 月1 日零時起到公元9999 年12 月31 日23 時59 分59 秒之間的所有日期和時間,其精確度可達三百分之一秒,即3.33 毫秒。DATETIME 數(shù)據(jù)類型所占用的存儲空間為8 個字節(jié)。其中前4 個字節(jié)用于存儲1900 年1 月1 日以前或以后的天數(shù),數(shù)值分正負,正數(shù)表示在此日期之后的日期,負數(shù)表示在此日期之前的日期。后4 個字節(jié)用于存儲從此日零時起所指定的時間經(jīng)過的毫秒數(shù)。如果在輸入數(shù)據(jù)時省略了時間部分,則系統(tǒng)將12:00:00:000AM作為時間缺省值:如果省略了日期部分,則系統(tǒng)將1900 年1 月1 日作為日期缺省值。
2 ALLDATETIME
ALLDATETIME 數(shù)據(jù)類型與DATETIME 數(shù)據(jù)類型相似,但其日期時間范圍較小,為從1900 年1 月1 日到2023 年6 月6:日精度較低,只能精確到分鐘,其分鐘個位上為根據(jù)秒數(shù)四舍五入的值,即以30 秒為界四舍五入。如:DATETIME 時間為14:38:30.283時ALLDATETIME 認為是14:39:00 ALLDATETIME 數(shù)據(jù)類型使用4 個字節(jié)存儲數(shù)據(jù)。其中前2 個字節(jié)存儲從基礎日期1900 年1 月1 日以來的天數(shù),后兩個字節(jié)存儲此日零時起所指定的時間經(jīng)過的分鐘數(shù)。
八、 貨幣數(shù)據(jù)類型
貨幣數(shù)據(jù)類型用于存儲貨幣值。在使用貨幣數(shù)據(jù)類型時,應在數(shù)據(jù)前加上貨幣符號,系統(tǒng)才能辨識其為哪國的貨幣,如果不加貨幣符號,則默認為“¥”。各貨幣符號如圖4-2所示。
1 MONEY
MONEY 數(shù)據(jù)類型的數(shù)據(jù)是一個有4 位小數(shù)的DECIMAL 值,其取值從-2的63次方(-922,337,203,685,477.5808到2的63次方-1(+922,337,203,685,477.5807),數(shù)據(jù)精度為萬分之一貨幣單位。MONEY 數(shù)據(jù)類型使用8個字節(jié)存儲。
2 ALLMONEY
ALLMONEY數(shù)據(jù)類型類似于MONEY 類型,但其存儲的貨幣值范圍比MONEY數(shù)據(jù)類型小,其取值從-214,748.3648到+214,748.3647,存儲空間為4 個字節(jié)。
九、 特定數(shù)據(jù)類型
SQL Server 中包含了一些用于數(shù)據(jù)存儲的特殊數(shù)據(jù)類型。
1 TIMESTAMP
TIMESTAMP數(shù)據(jù)類型提供數(shù)據(jù)庫范圍內的惟一值此類型相當于BINARY8或VARBINARY(8),但當它所定義的列在更新或插入數(shù)據(jù)行時,此列的值會被自動更新,一個計數(shù)值將自動地添加到此TIMESTAMP數(shù)據(jù)列中。每個數(shù)據(jù)庫表中只能有一個TIMESTAMP數(shù)據(jù)列。如果建立一個名為“TIMESTAMP”的列,則該列的類型將被自動設為TIMESTAMP數(shù)據(jù)類型。
2 UNIQUEIDENTIFIER
UNIQUEIDENTIFIER 數(shù)據(jù)類型存儲一個16 位的二進制數(shù)字。此數(shù)字稱為(GUIDGlobally Unique Identifier ,即全球惟一鑒別號)。此數(shù)字由SQLServer 的NEWID函數(shù)產生的全球惟一的編碼,在全球各地的計算機經(jīng)由此函數(shù)產生的數(shù)字不會相同。
十、 用戶自定義數(shù)據(jù)類型
SYSNAME SYSNAME 數(shù)據(jù)類型是系統(tǒng)提供給用戶的,便于用戶自定義數(shù)據(jù)類型。它被定義為NVARCHAR(128),即它可存儲128個UNICODE字符或256個一般字符。
以表格形式說明:
字段類型 描述
bit 0或1的整型數(shù)字
int 從-2^31(-2,147,483,648)到2^31(2,147,483,647)的整型數(shù)字
allint 從-2^15(-32,768)到2^15(32,767)的整型數(shù)字
tinyint 從0到255的整型數(shù)字
decimal 從-10^38到10^38-1的定精度與有效位數(shù)的數(shù)字
numeric decimal的同義詞
money 從-2^63(-922,337,203,685,477.5808)到2^63-1(922,337,203,685,477.5807)的貨幣數(shù)據(jù),最小貨幣單位千分之十
allmoney 從-214,748.3648到214,748.3647的貨幣數(shù)據(jù),最小貨幣單位千分之十
float 從-1.79E+308到1.79E+308可變精度的數(shù)字
real 從-3.04E+38到3.04E+38可變精度的數(shù)字
datetime 從1753年1月1日到9999年12日31的日期和時間數(shù)據(jù),最小時間單位為百分之三秒或3.33毫秒
alldatetime 從1900年1月1日到2023年6月6日的日期和時間數(shù)據(jù),最小時間單位為分鐘
timestamp 時間戳,一個數(shù)據(jù)庫寬度的唯一數(shù)字
uniqueidentifier 全球唯一標識符GUID
char 定長非Unicode的字符型數(shù)據(jù),更大長度為8000
varchar 變長非Unicode的字符型數(shù)據(jù),更大長度為8000
text 變長非Unicode的字符型數(shù)據(jù),更大長度為2^31-1(2G)
nchar 定長Unicode的字符型數(shù)據(jù),更大長度為8000
nvarchar 變長Unicode的字符型數(shù)據(jù),更大長度為8000
ntext 變長Unicode的字符型數(shù)據(jù),更大長度為2^31-1(2G)
binary 定長二進制數(shù)據(jù),更大長度為8000
varbinary 變長二進制數(shù)據(jù),更大長度為8000
關于sql數(shù)據(jù)庫浮點型英文的介紹到此就結束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關注本站。
成都創(chuàng)新互聯(lián)科技有限公司,是一家專注于互聯(lián)網(wǎng)、IDC服務、應用軟件開發(fā)、網(wǎng)站建設推廣的公司,為客戶提供互聯(lián)網(wǎng)基礎服務!
創(chuàng)新互聯(lián)(www.cdcxhl.com)提供簡單好用,價格厚道的香港/美國云服務器和獨立服務器。創(chuàng)新互聯(lián)成都老牌IDC服務商,專注四川成都IDC機房服務器托管/機柜租用。為您精選優(yōu)質idc數(shù)據(jù)中心機房租用、服務器托管、機柜租賃、大帶寬租用,可選線路電信、移動、聯(lián)通等。
網(wǎng)頁標題:SQL數(shù)據(jù)庫中的浮點型數(shù)據(jù)類型詳解(sql數(shù)據(jù)庫浮點型英文)
文章來源:http://fisionsoft.com.cn/article/dppdsge.html


咨詢
建站咨詢
