gpt4 book ai didi

python - 如何使用 Django ORM 排除列的多个值?

转载 作者:行者123 更新时间:2023-12-03 00:07:18 24 4
gpt4 key购买 nike

我想过滤 mytable 并获取名称不包含 '''-' 值的行,为此我有在下面的查询中使用但不起作用。

mytable.objects.exclude(name = ['','-']).order_by('name').count() 返回 2000 条所有行,而查询 mytable. objects.exclude(name = '').order_by('name').count() 完美工作并返回过滤后的 1460 个结果。

下面是我的 Postgresql 查询,它运行得非常好,返回 1450 结果,不包括 ['','-'] 的名称值>.

select * from mytable where name != '-' and name != '' order by -id

最佳答案

试试这个。

mytable.objects.exclude(name__in=['', '-'])

这应该排除与您在列表中传递的值匹配的行。

并且您不需要执行 order_by() 来获取计数。

只需直接在查询集上使用.count()即可。

关于python - 如何使用 Django ORM 排除列的多个值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59100435/

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