gpt4 book ai didi

python - Django:选择列的总和等于某个常数的位置

转载 作者:太空宇宙 更新时间:2023-11-04 06:34:44 25 4
gpt4 key购买 nike

我已经搜索了文档,但找不到运行这样的查询的简单方法:

SELECT columns FROM table WHERE col_a + col_b = @param

我知道我可以使用 .extra(where=['col_a + col_b = %s' % whatever]),但这没有参数化。

有没有办法在 ORM 中执行此操作(即没有 extra)?否则,运行该查询的最简洁方法是什么?

最佳答案

您可以尝试使用 F() 表达式进行过滤。看这里:https://docs.djangoproject.com/en/dev/topics/db/queries/#filters-can-reference-fields-on-the-model

试试这个:

from django.db.models import F
Something.objects.filter(col_a=CONST-F('col_b'))

还没有尝试过,但它可能会像这样工作:如果 CONST = 10 并且如果 B 列是例如 8,则仅当 A 列是 2 时才获取。

关于python - Django:选择列的总和等于某个常数的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12881215/

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