如何在 Django ORM 中重写查询?
Posted
技术标签:
【中文标题】如何在 Django ORM 中重写查询?【英文标题】:How rewrite query in Django ORM? 【发布时间】:2017-08-23 17:30:55 【问题描述】:请帮忙改写为 Django ORM
SELECT * FROM T
WHERE REPLACE(T.field, '-', ' ') = REPLACE(VALUE,'-', ' ')
【问题讨论】:
【参考方案1】:您可以关注“https://docs.djangoproject.com/en/1.11/topics/db/sql/”。您可以对 Django ORM 使用原始查询。
【讨论】:
对不起,但原始查询不需要。只需要Django ORM(这是测试任务,但我不执行他,我不知道怎么做) obs = Goods.objects\ # 我尝试这样做: .annotate(data2=Func( # F('data'), F('data'), Value("'-'" ), Value("' '"), function='replace', ))\ .filter( Q(data__contains="Andrew") | Q( data2=Func( F('data'), Value("'-7 '"), Value("'7'"), function='replace', ), ))以上是关于如何在 Django ORM 中重写查询?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 django ORM 的 From 子句中编写子查询
在 django ORM 中查询时如何将 char 转换为整数?