使用 TTL 选择语句: 例如:
SELECT value, ttl(value), last_modified
FROM test.tblTTLINORDERBY
WHERE useruid = ‘userid1' AND direction IN ('out', 'in');
在JOOQ升级之前,如果我们在插入数据时不使用TTL值,然后使用select查询检查TTL值,则会显示为
0
。
JOOQ升级后(
3.9.1
-> 3.17.x
),如果我们在插入数据时不使用TTL值,然后使用select查询检查TTL值,则会将值显示为null
。
您是否认为
0
和 null
在这种情况下是等效的?
当数据未设置过期时,其
TTL()
值为 null
。如果数据之前设置了 TTL,则可以通过设置 TTL
为 0
来覆盖/删除过期时间。这意味着 0
和 null
可以互换并且含义相同。
作为一点背景知识,这在 Cassandra 3.10 中已保持一致,因此可以使用
0
或 null
(CASSANDRA-12216) 设置 TTL。干杯!