簡體   English   中英

在使用Django ORM時如何在Case / When子句中提供否定條件?

[英]How to provide a negative condition in Case/When clause while using Django ORM?

我正在使用Django 1.8。 我正在做一個條件匯總,其中Sum內的Case語句如下所示:

Sum(Case(When(x='ABC', then=F('some_field')), default=0))

如果我想說x應該是除ABC以外的任何值,那么我該如何否定這個條件。 請問~Q在這種情況下工作?

是的,您的方向正確。 可以使用Q對象創建“不相等”條件:

Sum(Case(When(~Q(x='ABC'), then=F('some_field')), default=0))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM