Clickhouse資料型別

2021-10-25 06:18:02 字數 3468 閱讀 4859

1整數型別:

int8/int16/int32/int64

分別對應mysql型別tinyint/smallint/int/bigint

取值範圍:是-2的(int後數字-1)的平方到2的(int後數字的平方-1)-1,int8對應-128~127

uint8/uint16/uint32/uint64

前面加u 例如 uint8 代表全部是正數,

取值範圍0到2的int後面數字次方-1,如uint8對應0-255

2 浮點型別:

float32/float64

分別對應mysql的float與double

decimal(n,p)對應於mysql decimal(n,p)

但是有簡寫形式decimal32(p),decimal64(p),decimal128(p),分別對應

decimal(1~9,p),decimal(10~18,p)``decimal(19~38,p)

3 字串型別

string/fixedstring/uuid

string不像mysql一樣有大小限制,它可以表示成msyqlvarchar/text/clob/blob的合集

fixedstring(n) 定長字串,相當於char

4 日期型別

dateyyyy-mm-dd格式

datetimeyyyy-mm-dd hh:mm:ss格式

1 陣列

array(型別)

2 tuple元組型別array中只能有一種資料型別,而tuple可以是自己定義的多種型別

tuple(型別1,型別2,型別3…)

3 列舉enum8(***)/enum16(***)分別對應 [-128, 127],[-32768, 32767]

用法:

create

table enumtest (e enum8(

'hello'=1

,'world'=2

))engine

= tinylog;

insert

into enumtest values

('world');

insert

into enumtest values

('aaa'

);

第二條sql會報錯

列舉型別的排序會根據後面對應的int型別排.

4 巢狀型別

nested(name1 type1,name2 type2…)

可以理解成array(array(type1),array(type2)…)

create

table nestedtest(n nested(id int32,name string)

)engine

=tinylog;

insert

into nestedtest values([

1,2]

,['zhangsan'

,'lisi'])

;insert

into nestedtest values([

3,4,

5],[

'zhaoliu'

,'tianqi'])

;

第二行報錯,因為同一行中的兩個欄位id與name長度必須一樣.

查詢:

select n.id,n.name from nestedtest

5 nullable(type)可為null的型別

create

table nulltest(id int32)

engine

=tinylog;

insert

into nulltest values

(null

);

會報錯,不允許為null

create

table nulltest2(id nullable(int32)

)engine

=tinylog;

insert

into nulltest2 values

(null

);

還有一些很少很少用的就不說了

clickhouse官網

clickHouse 基本資料型別

整型 固定長度的整型,包括有符號整型或無符號整型。整型範圍 2n 1 2n 1 1 int8 128 127 int16 32768 32767 int32 2147483648 2147483647 int64 9223372036854775808 9223372036854775807 無符號...

資料型別基礎資料型別

資料型別 基礎型別 除八大基礎型別其他的都是引用型資料型別 引用資料型別 基礎資料型別 整型 byte 佔乙個位元組,範圍 128 127 short 佔兩個位元組,範圍 32768 32767 int 最常用 佔四個位元組,範圍 2147483648 2147483647 long 佔八個位元組 ...

資料型別 基本資料型別和引用資料型別

一.分類 1,五種簡單資料型別 基本資料型別 number,string,boolean,null,undefined,新增symbol es6 基本資料型別是指存放在棧中的簡單資料段,資料大小確定,記憶體空間大小可以分配,它們是直接按值存放的,所以可以直接按值訪問。1 undefined 宣告的變...