最近几天在作一些python项目的开发,其中用到了python的ORM框架sqlAlchemy,由于对python和sqlAlchemy并不熟悉,积累一些小的知识点分享给你们。html
一般状况下 咱们想知道表中的总条数的话sql这样写的:python
select count(id) from user
如此咱们即可以获得表中的总条数sql
在使用sqlAlchemy中想要得到总条数怎么办?
这样使用,须要引用 func 数据库
from sqlalchemy import func count =session.query(func.count(user.id)).scalar()
如上,咱们就能够获得数据的条数
相关连接+官方连接
截图 session
userlist=session.query(user).order_by(user.id.desc()).limit(pageSize).offset( (pageIndex-1)*pageSize).all()
userlist=session.query(user).order_by(user.id.desc()) count=len(list(userlist)) userlist = userlist.limit(pageSize).offset( (pageIndex-1)*pageSize)
这样也能够获取到数据的条数,数据量少的话可能没有什么感受,当数据量大的时候会发现,查询数据真慢
至关于查询了两次数据库以后,再在内存中从新计算条数和分页。
大数据量的状况下这样效率极低框架