2

我使用 datastax java 驱动程序构造了一个选择查询。我使用限制选项设置限制。但我看到另一个可以设置的属性

setFetchSize(整数大小)

DEFAULT_FETCH_SIZE- 5000 根据文档。

http://www.datastax.com/drivers/java/2.0/com/datastax/driver/core/QueryOptions.html#DEFAULT_FETCH_SIZE

这是否意味着如果我一行中有大约 10000 列,如果我有一个限制为 3 的查询运行,它将始终获取指定的默认值 - 5000 行,然后限制最后 3 行?

我认为限制查询在像这样使用时默认单独获取最后 3 个值。有人可以澄清一下吗?

4

3 回答 3

6

LIMIT设置引擎检索setFetchSize的最大行数,同时设置一次往返中返回给客户端的最大行数。

于 2014-04-04T11:08:37.227 回答
0

我认为 fetchsize 和 limit 之间的区别与 JDBC 与 MySQL 等其他数据库的区别相同。

因此,LIMIT 会将您的查询结果限制在指定范围内。

获取大小是当您使用 next() 滚动查询 ResultSet 时,驱动程序一次从数据库中物理检索的行数。

于 2014-04-17T12:18:11.517 回答
0

在 cassandra LIMIT 中的工作方式与 mysql 或任何其他 RDBMS 限制不同,

默认情况下,当您执行选择查询时,它将显示数据直到 10000 列,之后会出现 1 条消息,表明它超出了类似的限制,所以假设您在数据库中有 50000 条记录并且您正在执行选择查询,那么只有 10000将出现记录,因此现在您将执行查询select * from table LIMIT 50000,在这种情况下,所有 50000 条数据都将显示..

于 2014-04-04T06:12:26.917 回答