使用 django orm 实现我的过滤器
Posted
技术标签:
【中文标题】使用 django orm 实现我的过滤器【英文标题】:using django orm to realize my filter 【发布时间】: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吗? 【参考方案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])
【讨论】:
以上是关于使用 django orm 实现我的过滤器的主要内容,如果未能解决你的问题,请参考以下文章