检查 Cassandra 选择查询是否达到限制



我想检查选择查询是否达到限制。在这种情况下,我想避免获取任何结果并且什么都不做:

Statement statement = session.prepare("SELECT user_id, payload FROM db.users WHERE user_id = :user_id LIMIT 5000").bind().setUUID("user_id", userId).setFetchSize(100)
ResultSet resultSet = session.execute(statement)
if (resultSet didn't reached the limit of 5000) {
  //do stuff
} else {
  //do nothing
}

我以为getAvailableWithoutFetching会做这个技巧,但它返回每页的结果数(获取大小(。
有没有办法做到这一点,而无需额外的查询只是为了计数?
这应该是一种罕见的情况,我不想每次都创建一个额外的查询来检查限制。特别是当count(*(扫描所有结果而不选择限制时 - Cassandra CQL 使用限制选择计数

有没有办法做到这一点,而无需额外的查询只是为了计数?

不。 您的"非获取"查询就是对计数的查询。

最新更新