几天的总条数的话这样写的,真是太神奇了
优采云 发布时间: 2021-08-04 03:32几天的总条数的话这样写的,真是太神奇了
这几天一直在做一些python项目的开发。我使用了 python 的 ORM 框架 sqlAlchemy。因为对python和sqlAlchemy不熟悉,所以积累了一些小知识点分享给大家。
获取文章总数
一般情况下,如果我们想知道表的总条目数,sql是这样写的:
select count(id) from user
这样我们就可以得到表中项目的总数
如果我想在sqlAlchemy中获取项目总数应该怎么做?
这种用途,func需要被引用
from sqlalchemy import func
count =session.query(func.count(user.id)).scalar()
如上,我们可以得到数据的数量。
相关链接
截图
按页面搜索
比较简单,直接粘贴代码
我的错误
查询总条目数时不使用Func.count()
我是这样写的
userlist=session.query(user).order_by(user.id.desc())
count=len(list(userlist))
userlist = userlist.limit(pageSize).offset(
(pageIndex-1)*pageSize)
这样也可以得到数据的个数。如果数据量很小,你可能没有什么感觉。数据量大的时候,你会发现查询数据真的很慢
相当于查询数据库两次,然后重新计算内存中的条目数和分页。
这在大量数据的情况下效率极低