我想检查选择查询是否达到限制。在这种情况下,我想避免获取任何结果并且什么也不做:
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 Select count with LIMIT
答案 0 :(得分:0)
是否有一种无需额外查询即可完成计数的方法?
不。您的“非获取”查询就是这样,即查询计数。