gpt4 book ai didi

mysql - django 和 mysql - 使用过滤器选择不同的列

转载 作者:行者123 更新时间:2023-11-29 10:25:15 24 4
gpt4 key购买 nike

假设我有一个包含 3 列的表格:

create table t1 (c1 int, c2 int, c3 int)

我想在对 c1c2c3 应用过滤器后返回 c2 的不同值列表>.

在 SQL 级别,我可以轻松做到这一点:

select distinct (c1) from t1 where c1=10 and c2>30 and c3 in (1,2,3)

在 Django 中执行此操作的最佳方法是什么?

我不想使用.raw SQL,因为过滤器是动态的,构建适当的 SQL 查询将是一场噩梦(真实表中有超过 30 列)。

有没有办法创建一个查询集,其中包含针对所有表列的过滤器,并且仅返回表的子列?如果是这样,distinct() 就会起作用。

最佳答案

只需使用.distinct()

https://docs.djangoproject.com/en/dev/ref/models/querysets/#distinct

请注意,您必须使用 Postgresql 才能在字段而不是行上使用不同的值。

关于mysql - django 和 mysql - 使用过滤器选择不同的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48431463/

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