首页 > 数据库 > MySQL > clickhouse数据类型简介
| 名称 | 大小(字节) | MySQL类型 |
|---|---|---|
| Int8 | 1 | Tinyint |
| Int16 | 2 | Smallint |
| Int32 | 4 | Int |
| Int64 | 8 | Bigint |
clickhouse也支持无符号的整数。
| 名称 | 大小(字节) | MySQL类型 |
|---|---|---|
| UInt8 | 1 | Tinyint Unsigned |
| UInt16 | 2 | Smallint Unsigned |
| UInt32 | 4 | Int Unsigned |
| UInt64 | 8 | Bigint Unsigned |
| 名称 | 有限位数 | MySQL类型 |
|---|---|---|
| Float32 | 7 | Float |
| Float64 | 16 | Double |
如果超过有效精度,会出现数据误差:
mdb01 :) select toFloat32('0.123456789') as a;
SELECT toFloat32('0.123456789') AS a
┌──────────a─┐
│ 0.12345679 │
└────────────┘
1 rows in set. Elapsed: 0.002 sec.
clickhouse浮点数支持正无穷,负无穷以及非数字
正无穷:
mdb01 :) select 1/0;
SELECT 1 / 0
┌─divide(1, 0)─┐
│ inf │
└──────────────┘
负无穷:
mdb01 :) select -1/0;
SELECT -1 / 0
┌─divide(-1, 0)─┐
│ -inf │
└───────────────┘
非数字:
mdb01 :) select 0/0;
SELECT 0 / 0
┌─divide(0, 0)─┐
│ nan │
└──────────────┘
| 名称 | mysql类型 |
|---|---|
| Decimal32(S) | Decimal(1-9, S) |
| Decimal64(S) | Decimal(10-18, S) |
| Decimal128(S) | Decimal(19-38, S) |
字符串用String类型,长度不限。而且不限定字符集。
类似MySQL的Char类型,属于定长字符。但与Char不同,Char末尾长度不够时用空格填充,但是FixedString用null填充。
UUID共32位,格式为8-4-4-4-12
SELECT generateUUIDv4()
┌─────────────────────generateUUIDv4()─┐
│ c4c3db13-bbde-4633-8ea5-27d870fc91d8 │
└──────────────────────────────────────┘
包含时分秒,精确到秒,支持字符串形式写入。
DateTime64(precision, [timezone])
精确到天
array(T),或者简写为[T].
mdb01 :) select array(1,2);
SELECT [1, 2]
┌─array(1, 2)─┐
│ [1,2] │
└─────────────┘
1 rows in set. Elapsed: 0.003 sec.
mdb01 :) select [1,2];
SELECT [1, 2]
┌─[1, 2]─┐
│ [1,2] │
└────────┘
1 rows in set. Elapsed: 0.002 sec.
tuple(T),或者简写为(T)
Enum8:(String:Int8)
Enum16:(String:Int16)
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/31480688/viewspace-2745721/ ,如需转载,请注明出处,否则将追究法律责任。