Cassandra - CQL 数据类型
CQL 提供了一组丰富的内置数据类型,包括集合类型。除了这些数据类型,用户还可以创建自己的自定义数据类型。下表列出了 CQL 中可用的内置数据类型。
| 数据类型 | 常量 | 描述 |
|---|---|---|
| ascii | strings | 表示 ASCII 字符字符串 |
| bigint | bigint | 表示 64 位有符号 long |
| blob | blobs | 表示任意字节 |
| Boolean | booleans | 表示 true 或 false |
| counter | integers | 表示 counter 列 |
| decimal | integers, floats | 表示可变精度的 decimal |
| double | integers | 表示 64 位 IEEE-754 浮点数 |
| float | integers, floats | 表示 32 位 IEEE-754 浮点数 |
| inet | strings | 表示 IP 地址,支持 IPv4 或 IPv6 |
| int | integers | 表示 32 位有符号 int |
| text | strings | 表示 UTF8 编码的字符串 |
| timestamp | integers, strings | 表示时间戳 |
| timeuuid | uuids | 表示 type 1 UUID |
| uuid | uuids | 表示 type 1 或 type 4 |
| UUID | ||
| varchar | strings | 表示 UTF8 编码的字符串 |
| varint | integers | 表示任意精度的整数 |
集合类型
Cassandra Query Language 还提供了集合数据类型。下表列出了 CQL 中可用的集合类型。
| 集合类型 | 描述 |
|---|---|
| list | list 是一个或多个有序元素的集合。 |
| map | map 是一个键值对的集合。 |
| set | set 是一个或多个元素的集合。 |
用户定义的数据类型
Cqlsh 为用户提供了创建自己的数据类型的功能。以下是处理用户定义数据类型时使用的命令。
CREATE TYPE − 创建用户定义的数据类型。
ALTER TYPE − 修改用户定义的数据类型。
DROP TYPE − 删除用户定义的数据类型。
DESCRIBE TYPE − 描述用户定义的数据类型。
DESCRIBE TYPES − 描述用户定义的数据类型。