我有一个sql查询,我将从中获取10000行你能告诉我任何方式我可以拆分并且每次使用500行进行一些操作并再次使用500行等等,你能建议我吗?哪种方式最适合它,500行应该用'OR'分隔才能使用它们我将在solr查询中使用它们
答案 0 :(得分:1)
发出多个查询,每批500个行一个查询。在查询中,您可以使用LIMIT offset, count
来限制返回的行数以及要返回的第一行的偏移量。初始行的偏移量为0。
答案 1 :(得分:1)
你可以拆分像1-500,500-1000,1000-1500这样的sql行 你可以使用以下的sql查询。
SELECT * FROM `your_table` LIMIT start, end
就像
SELECT * FROM `your_table` LIMIT 0, 500
SELECT * FROM `your_table` LIMIT 500, 1000
启动您生成一个代码的结束值
答案 2 :(得分:0)
使用Top关键字( Sql server )
可以获得相等分割的行Select top 500 * from tableName where id > lastId
MySql
SELECT * FROM table ORDER BY ID DESC LIMIT lastCount, 500
答案 3 :(得分:0)
通过在语句对象上调用setFetchSize(500)来检索整个查询和process it 500 rows at a time。这是标准JDBC,但您的驱动程序不需要支持它。