具有distinct()的Django order_by()过滤器
发布时间:2021-01-11 23:29:50 所属栏目:Python 来源:互联网
导读:我怎么可以像这样做一个order_by …. p = Product.objects.filter(vendornumber=403516006) .order_by(-created).distinct(vendor__name) 问题是我有同一个名字的多个供应商,我只想要供应商的最新产品. 希望有意义吗? 我得到这个DB错误: SELECT
我怎么可以像这样做一个order_by …. p = Product.objects.filter(vendornumber='403516006') .order_by('-created').distinct('vendor__name') 问题是我有同一个名字的多个供应商,我只想要供应商的最新产品. 希望有意义吗? 我得到这个DB错误:
解决方法根据您的错误信息和 this other question,在我看来,这将修复它:p = Product.objects.filter(vendornumber='403516006') .order_by('vendor__name','-created').distinct('vendor__name') 也就是说,DISTINCT ON表达式似乎必须与最左边的ORDER BY表达式匹配.因此,通过将列用于distinct_by中的第一列,我认为它应该工作. (编辑:百色站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 创建一个包含来自另一个字典的特定键值对的Python字典
- python – 处理包含多个字符编码的字符串
- python – 在Matplotlib中绘制两行之间的角度的最佳方式
- python – 测试Flask登录和身份验证?
- 是否有一种标准方法来声明不支持旧的python版本?
- python – hashlib.md5()TypeError:Unicode对象必须在散列
- python – Pandas concat:ValueError:传递值的形状是blah
- python – 查找列表中所有可能的子列表
- 在Django中使用python-social-auth和电子邮件注册复制电子邮
- python爬虫防止IP被封的方法