上一章节介绍了基本的查找语句,我们可以通过查询出的数据,然后进行修改、删除数据等操作,本章介绍几个函数在
sqlalchemy
中的使用。
一、几个基本函数的使用
-
1、
count()
计数函数... def query_user(): rows = dbSession.query(UserModule).count() print(rows) ...
-
2、导包
from sqlalchemy import func, extract
-
3、分组计数
... def query_user(): rows = dbSession.query(func.count(UserModule.user_name), UserModule.user_name).group_by(UserModule.user_name).all() print(rows) ... # [(1, '王五'), (1, '马六'), (1, '赵五'), (1, '王二')]
-
4、行内计数
... def query_user(): # rows = dbSession.query(func.count('*')).select_from(UserModule).scalar() rows = dbSession.query(func.count(UserModule.id)).scalar() print(rows) ...
-
5、
having
是对查找结果进一步过滤... def query_user(): rows = dbSession.query(UserModule.password, func.count(UserModule.id)).group_by(UserModule.password).having( func.count(UserModule.id) > 1).all() print(rows) ...
二、聚合函数的使用
-
1、
func.sum
求和... def query_user(): rows = dbSession.query(UserModule.password, func.sum(UserModule.id)).group_by(UserModule.password).all() print(rows) ...
-
2、
func.max
求最大值 -
3、
func.min
求最小值
三、条件选择
-
1、导包
from sqlalchemy import or_
-
2、使用
def query_user(): rows = dbSession.query(UserModule).filter(or_(UserModule.user_name == '王五', UserModule.user_name == '王二')).all() print(rows)
-
3、使用场景(登录的时候,手机号码、邮箱、用户名登录)