
# 如何使用Counter列
GeminiDB Cassandra支持使用Counter列，用于跟踪统计结果（如页面访问量、消息数等）。
#### Counter支持的操作
在原生Cassandra中，Counter列的值为64位有符号整数，仅支持递增和递减。除此之外，GeminiDB Cassandra提供如下功能：
- 设置Counter列的值。
- 删除Counter列的值（包括列删除、单行删除、范围删除和分区删除）。
- 使用范围删除和分区删除功能会降低Counter表的写入性能，故此功能默认为关闭状态。
- 使用范围删除和分区删除功能需修改 ***counter_multiline_deletion_enabled*** 参数值为 true 。
 
#### Counter使用限制
- Counter不能被定义为主键。
- 包含Counter列的表中的非主键列必须全部定义为Counter类型。
- Counter不支持设置TTL。
- Counter不支持INSERT操作，只能通过UPDATE操作写入。
 
#### Counter使用示例
```
CREATE TABLE t0(pk int, ck int, v1 counter, v2 counter, v3 counter, PRIMARY KEY(pk, ck));
# 写入Counter列，v1使用设置值操作，v2使用递增操作，v3使用递减操作
UPDATE t0 SET v1 = 1, v2 = v2 + 1, v3 = v3 - 1 WHERE pk = 1 AND ck = 1;
# 删除Counter列
DELETE v1 FROM t0 where pk = 1 AND ck = 1;
# 删除Counter行
DELETE FROM t0 where pk = 1 AND ck = 1;
```
