【问题标题】:using django orm to realize my filter使用 django orm 实现我的过滤器
【发布时间】:2011-07-16 07:34:51
【问题描述】:

我的原始sql语句如下:

select* from t 
where dateadd(ss,closedate-datediff(ss,getdate(),getutcdate()),'1970-1-1')
      between convert (datetime,'2011-7-1 00:00:00') and convert(datetime,'2011-7-31 23:59:59')

已关闭是我在表 t 中的列之一,它的意思是:从 1970-1-1 开始的秒数。

我如何使用 Django ORM 实现这个查询?这里涉及到 dateadd、datediff(sql server 2005) API,

我不知道如何处理这个问题。

【问题讨论】:

  • 能发一下django模型和数据库表的schema吗?

标签: sql django orm dateadd


【解决方案1】:

您是否尝试进行日期范围查询?比如,获取两个日期之间的所有记录? 如果是,那么类似以下内容将为您提供过去 30 天的记录

today = date.today() + timedelta(days=1)
n_days_ago = today + timedelta(days=-30)
trans = Transactions.objects.filter(payment_received_date__range=[n_days_ago ,today])

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-10-01
    • 2014-09-24
    • 2011-05-06
    • 1970-01-01
    • 1970-01-01
    • 2022-06-12
    • 1970-01-01
    • 2011-04-17
    相关资源
    最近更新 更多