python分页查询_【已解决】Python的Flask中pymysql中mysql返回分页查询结果

本文介绍了在Python Flask应用中使用pymysql进行分页查询MySQL数据库的方法,包括使用LIMIT和OFFSET实现分页,以及如何计算总条数、判断前后页。在大数据量时,讨论了性能优化策略,如避免OFFSET和LIMIT的大数值,提出了 Seek 方法作为替代方案。最后展示了完整的分页查询代码示例。
摘要由CSDN通过智能技术生成

现有Flask项目,已经可以用pymysql中sql语句去查询到已有的mysql的数据库中:

对应的数据了:

相关代码是:pageNumber = parsedArgs["pageNumber"]

pageSize = parsedArgs["pageSize"]

searchByUserSql = "SELECT * FROM `user_storybook_list` WHERE `userId` = %d" % userId

searchByUserOk, resultDict = sqlConn.executeSql(searchByUserSql)

log.debug("%s -> %s, %s", searchByUserSql, searchByUserOk, resultDict)

if searchByUserOk and resultDict["data"]:

foundItemList = resultDict["data"]

respDict["data"] = foundItemList

return jsonify(respDict)

else:

return genRespFailDict(NotFound.code, "Not found user storybook list from userId %d" % userId)

现在需要去:

实现返回结果的分页数据

根据page的size和number返回对应数据,最好加上:

中的字段:respData = {

"evaluationList": evaluationList,

"curPageNum": pageNumber,

"numPerPage": pageSize,

"totalNum": totalCount,

"totalPageNum": totalPageNum,

"hasPrev": hasPrev,

"hasNext": hasNext,

}

便于前端去分页显示

mysql select pagingSELECT * FROM tbl LIMIT 5,10;  # Retrieve rows 6-15

好像就基本够用了。

还要加上sort才行,根据此处的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值