SQLAlchemy-使用最少的查询对唯一组进行分组和计数

时间:2018-07-15 18:31:40

标签: python postgresql sqlalchemy

假设我有一个measurement s表,每个表都有一个type列。我想按测量类型分组。

使用ORM,我可以考虑先进行types = [m.type for m in session.query(Measurement).distinct(Measurement.type).all()],然后遍历types并进行filter_by(type==type),但是我认为这会影响数据库。

我使用的是postgres10。是否可以破坏数据库,并且它将缓存中间结果?如果没有,我是否应该使用redis之类的东西自己进行缓存? IMO的最佳选择是优化通过SQLalchemy完成的查询,但我不知道该怎么做。

我想要的输出(格式不一定匹配)是

types = ['type 1', 'type 2', 'type 3', ...]
counts = [1, 2, 3, ...]

0 个答案:

没有答案