根据 Django 数据库中的某个字段获取不同的行

2024-04-05

我需要在 Django 中构建一个查询,我想知道这是否可能(它可能非常明显,但我错过了......)。

我有一个正常的查询Model.objects.filter(x=True)[:5]它可以返回这样的结果:



FirstName    LastName    Country
Bob           Jones        UK
Bill          Thompson     UK
David         Smith        USA
  

我只需要抓取基于以下不同的行Country场,类似的东西Model.objects.filter(x=True).distinct('Country')[:5]这将是理想的,但对于 Django 来说这是不可能的。

我希望查询最终获取的行是:



FirstName    LastName    Country
Bob           Jones        UK
David         Smith        USA
  

我还需要查询使用与模型的 Meta 类中设置的相同顺序(即我无法以任何方式覆盖顺序)。

我该怎么做呢?

多谢。


我还没有测试过这个,但在我看来,字典应该可以完成这项工作,尽管那时可能会关闭订单:

d = {}
for x in Model.objects.all():
    d[x.country] = x

records_with_distinct_countries = d.values()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

根据 Django 数据库中的某个字段获取不同的行 的相关文章

随机推荐