django中的Case,When,then用法(Java case when用法)

网友投稿 347 2022-08-29


django中的Case,When,then用法(Java case when用法)

# 参考文档Case()接受任意数量的When()对象作为单独的参数。使用关键字参数提供其他选项。# 如果没有任何条件计算为TRUE,则default返回带有关键字参数的表达式。如果default未提供参数,None则使用。# 通俗点说就是当满足When条件时,就使用then后面给出的值。# 示例from datetime import date, timedeltafrom django.db.models import Case, CharField, Value, When>>> Client.objects.create( name='Jane Doe', account_type=Client.REGULAR, registered_on=date.today() - timedelta(days=36))>>> Client.objects.create( name='James Smith', account_type=Client.GOLD, registered_on=date.today() - timedelta(days=5))>>> Client.objects.create( name='Jack Black', account_type=Client.PLATINUM, registered_on=date.today() - timedelta(days=10 * 365))>>> Client.objects.annotate( discount=Case( When(account_type=Client.GOLD, then=Value('5%')), When(account_type=Client.PLATINUM, then=Value('10%')), default=Value('0%'), output_field=CharField(), ),).value_list('name', 'discount')

-------------------------------------------

个性签名:代码过万,键盘敲烂!!!

如果觉得这篇文章对你有小小的帮助的话,记得“推荐”哦,博主在此感谢!


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:auth模块的一些方法(auth 2.0)
下一篇:django中model聚合使用(django 动态生成model)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~