Django通过拆分字符串聚合

时间:2016-09-15 05:41:23

标签: django python-3.x django-models

我想通过我的一个字段的子字符串进行聚合。

models.py

class SomeModel(models.Model):
    symbol = models.CharField(db_column='SYMBOL', max_length=16)
    number = models.IntegerField(db_column='NUMBER') 

符号将是这样的;

'symbol': 'foo.bar', 'number':5
'symbol': 'foo.foo', 'number':10
'symbol': 'some.water', 'number':1
'symbol': 'some.milk', 'number':1

我想要的是聚合;

symbol.split('.')[0]

最终结果就像是;

'symbol': 'foo', 'number': 15
'symbol': 'some', 'number': 2

我查看了annotateaggregate文档,但我正在努力解决这个问题。谢谢。

1 个答案:

答案 0 :(得分:0)

你试过吗

SomeModel.objects.extra(select={'symbol': 'SUBSTRING_INDEX(symbol, ".")'})?