原始SQl语句:
select ip, group_concat(id) as id from white group by ip;
Django-ORM:
1. 创建Concat类
下面的 Concat 类是固定的,不需要更改
from django.db.models import Aggregate, CharField
class Concat(Aggregate):
"""ORM用来分组显示其他字段 相当于group_concat"""
function = 'GROUP_CONCAT'
template = '%(function)s(%(distinct)s%(expressions)s)'
def __init__(self, expression, distinct=False, **extra):
super(Concat, self).__init__(
expression,
distinct='DISTINCT ' if distinct else '',
output_field=CharField(),
**extra)
2. 模型管理器查询使用
White.objects.values('ip').annotate(id=Concat('id'))
文章转载自大码怪,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




