- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这似乎是一个很常见的场景,所以我真的希望有人能为我快速解答。
考虑这样一种情况,我有多个网站,每个网站有多家公司,我正在为其收集潜在客户。所以我有一个潜在客户表,其中每条记录都有以下字段:日期、站点、公司(一个潜在客户可以去多个公司), 用户,评论。现在我需要生成一个摘要,其中给出每个公司每个日期在每个网站上获得的潜在客户总数。
所以基本上我需要一个查询,它会为我提供每个网站上每个公司的总行数。这甚至可以在单个查询中完成吗?
或者,我们可以轻松地遍历站点,在这种情况下,我们只需要计算属于给定特定站点的每个公司的行数。
欣赏任何想法。下面是一个示例模型:
class Lead(models.Model):
date = models.DateTimeField(auto_now_add=True)
site = models.ForeignKey(Site)
companies = models.ManyToManyField(Company)
user = models.ForeignKey(User)
comment = models.TextField()
最佳答案
所以我一直在摆弄这个,我相信我已经想出了一个可以产生我想要的结果的解决方案。鉴于上面的模型,我正在使用以下内容:
Lead.objects.values('site', 'companies').annotate(Count('id'))
这会生成一个字典列表,每个唯一的网站/公司组合一个字典,每个字典包含一个 id__count 键,该键包含该网站和公司的特定组合的总行数。如果一条线索关联了多家公司,则会为每个公司生成一个单独的字典。
在我们的实际模型中,我们还有不同类型的线索和一个附加字段类型。因此,如果我也想考虑到这一点,我只需向模型添加一个 type 字段并使用以下内容:
Lead.objects.values('site', 'companies', 'type').annotate(Count('id'))
使用它,我将为每个网站、每种类型、每个公司获得一本字典,每个字典都有自己的计数。 Django 非常聪明!
无论如何,我确定是基本问题,但我找不到任何可以解决的问题。希望这对某人有帮助。
关于python - 在 Django 中,我如何在单个查询中根据不同的字段值获取总行数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23429968/
如何在表格底部做一行求和(TreeTableView - JavaFX 或 TableView)? (对不起我的英语不好)请写一个例子。 以图片(总计)为例 http://i.stack.imgur.
我是一名优秀的程序员,十分优秀!