gpt4 book ai didi

python - 如何在 Django 或 SQL 中查询 Non Unique Together 值?

转载 作者:行者123 更新时间:2023-11-29 14:06:34 27 4
gpt4 key购买 nike

假设我有这个模型:

class Contact(BaseModel):
order = models.ForeignKey(Order, related_name='contacts', blank=True, null=True)
type = models.CharField(max_length=15, choices=TYPES, blank=True))

我想找到所有 ordertype 不唯一的订单。

比如有订单A,有相关联系人:

Contact(order=orderA, type='broker')
Contact(order=orderA, type='broker')
Contact(order=orderA, type='delivery')

我想找到这个 orderA 因为这个订单和 type='broker'Contact 模型中不是唯一的。

然后是orderB和这些相关的联系人:

Contact(order=orderB, type='broker')
Contact(order=orderB, type='delivery')

我不想要这个 orderB 因为它和字段 typeContact 模型中是唯一的。

我尝试使用 Django 的 annonate() 但未能关联这两个字段。

是否可以使用 Django 查询来做到这一点?

如果没有,我将不胜感激我如何在 SQL 中完成它的轻微提示。

非常感谢。

最佳答案

您可以使用如下 SQL 查询:

select distinct order_id
from (
select order_id, type
from Contact
group by order_id, type
having count(*) > 1);

“order”列显示为“order_id”,因为这是 Django 命名列的方式。

关于python - 如何在 Django 或 SQL 中查询 Non Unique Together 值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40705414/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com