分组操作
分组操作,就是将某一列,相同的值进行压缩,然后就可以得出压缩值的数量。
如果压缩的是外键,还可以取出外键的详细信息。
示例:查询出每个出版社出版的数量。...注:分组(annotate)后面跟的values。
里面只能写外键字段的列和annotate里面的列,不能写其他。
如果分组分的不是外键字段,那就不能再跟values!...分组再筛选
分组再筛选本质就是原生sql的group by .. having,将压缩完的数据在进行条件判断。
但是对压缩的数据进行判断只能通过having。...F查询
有时候,我们可能有这样的需求,就是两个列之间进行比较。
比如经典问题,一个商品,找到收藏数大于销量的商品等之类的两列进行比较的需求。
示例:查询book表,评论数小于收藏数的数据。...本篇主要补充的是一些高端操作,例如聚合操作,分组操作,分组再筛选操作,F查询和Q查询。
如何动态构造Q查询。
相对来说,Django还是自由度比价高的,而且写起来确实比较省心。