InTheBloodHorse

Flask 笔记

字数统计: 152阅读时长: 1 min
2018/09/26 Share

随机查询模型12条数据

1
2
from sqlalchemy.sql.expression import func
photos = Photo.query.order_by(func.rand()).limit(12)

python内置的random模块提供的choice()方法进行随机排序的性能远不及数据库引擎提供的随机函数。

查询使用次数最多的前十个标签

1
2
from sqlalchemy.sql.expression import func
tags = Tag.query.join(Tag.photos).group_by(Tag.id).order_by(func.count(Photo.id).desc()).limit(10)

Tag.query:从Tag模型开始查询
join(Tag.photos):联结Tag和Photo
group_by(Tag.id):根据Tag记录的id分组
order_by(func.count(Photo.id).desc()):使用通用函数count()统计各组记录的数量,然后降序排序
limit(10):限制10条

原文作者:InTheBloodHorse

原文链接:http://pyking.cn/2018/09/26/Flask-笔记/

发表日期:September 26th 2018, 10:04:12 pm

更新日期:September 26th 2018, 10:17:24 pm

版权声明:Have a fun

CATALOG
  1. 1. 随机查询模型12条数据
  2. 2. 查询使用次数最多的前十个标签