clickhouse基礎(chǔ)數(shù)據(jù)類(lèi)型

數(shù)值類(lèi)型

  • Int

clickhouse中int類(lèi)型主要分為Int8, Int16, Int32, Int64,每種子類(lèi)型占用字節(jié)及范圍見(jiàn)下表:

類(lèi)型 字節(jié) 數(shù)值范圍
Int8 1 -128 ~ 127
Int16 2 -32768 ~ 32767
Int32 4 -2147483648 ~ 2147483647
Int64 8 -9223372036854775808 ~ 9223372036854775807

另外clickhouse中也支持無(wú)符號(hào)整數(shù),對(duì)應(yīng)的子類(lèi)型前加U表示對(duì)應(yīng)的無(wú)符號(hào)類(lèi)型,見(jiàn)下表:

類(lèi)型 字節(jié) 數(shù)值范圍
UInt8 1 0 ~ 255
UInt16 2 0 ~ 65535
UInt32 4 0 ~ 4294967295
UInt64 8 0 ~ 18446744073709551615
  • Float

clickhoust中有兩種子Float類(lèi)型,F(xiàn)loat32和Float64,分別代表單精度浮點(diǎn)數(shù)和雙精度浮點(diǎn)數(shù),見(jiàn)下表:

類(lèi)型 字節(jié) 有效小數(shù)位數(shù)
Float32 4 7
Float64 8 16
  • Decimal

如果Float類(lèi)型還不能夠滿(mǎn)足精度需求,clickhouse還提供了Decimal(定點(diǎn)數(shù))類(lèi)型,分別由Decimal32, Decimal64, Decimal128三種子類(lèi)型。Decimal類(lèi)型有兩種申明方式:

* 簡(jiǎn)寫(xiě)方式:Decimal32(S)/Decimal64(S)/Decimal128(S)
* 原生方式:Decimal(P, S)
其中P代表精度,表示總位數(shù)(整數(shù)部分+小數(shù)部分),取值范圍:1 ~ 38
S表示小數(shù)位數(shù),取值范圍:0 ~ P
類(lèi)型 等效聲明 數(shù)值范圍
Decimal32(S) Decimal(1 ~ 9, S) -1 * 10^(9-S) ~ 1 * 10^(9-S)
Decimal64(S) Decimal(10 ~ 18, S) -1 * 10^(18-S) ~ 1 * 10^(19-S)
Decimal128(S) Decimal(19 ~ 38, S) -1 * 10^(38-S) ~ 1 * 10^(38-S)

當(dāng)使用不通精度的定點(diǎn)數(shù)進(jìn)行四則運(yùn)算時(shí),精度S會(huì)發(fā)生變化,變化規(guī)則見(jiàn)下表:

運(yùn)算類(lèi)型 精度變化規(guī)則
加法 S = max(S1, S2)
減法 S = max(S1, S2)
乘法 S = S1 + S2 (S1 >= S2)
除法 S = S1 (S1為被除數(shù)精度)

字符串類(lèi)型

  • String

String定義的字符串沒(méi)有長(zhǎng)度,字符集的限制,覆蓋了傳統(tǒng)意義上的Varchar, Text等字符類(lèi)型

  • FixedString

FixedString適用于需要明確字符串長(zhǎng)度的場(chǎng)景,通過(guò)FixedString(N)聲明一個(gè)長(zhǎng)度為N的定長(zhǎng)字符串,實(shí)際長(zhǎng)度不夠時(shí)會(huì)用null來(lái)補(bǔ)充

  • UUID

UUID共有32位,格式為 8-4-4-4-12,如果沒(méi)有賦值,則全部用0填充

時(shí)間類(lèi)型

  • DateTime

DateTime類(lèi)型包含時(shí),分,秒信息,精確到秒,可以直接使用字符串形式寫(xiě)入,例如 "2020-10-30 11:34:23"

  • DateTime64

DateTime64類(lèi)型能夠記錄到亞秒級(jí)別,在DateTime的基礎(chǔ)上增加了精度的設(shè)置

  • Date

Date類(lèi)型不包含具體的時(shí)間信息,只精確到天,同樣支持字符串形式直接寫(xiě)入

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容