2

我想在具有 CNT.Status 的 MyUser 表上执行 group by 子句,原始查询如下所示。

SELECT user_id from user_table GROUP BY user_id HAVING COUNT(status)=1

我尝试了使用 Django 模型 API 的各种选项,但它也在 group by 子句中添加了“id”。

4

1 回答 1

5

看来您正在寻找对注释的过滤

qs = ( MyUser
      .objects
      .annotate(num_status=Count('status'))
      .filter(num_status__gt=1)
     )

注意:我假设状态是 1:N 相关模型。

于 2013-02-12T08:16:23.170 回答