sha*_*set 7 python sqlite datetime sqlalchemy
在我的表定义中,我有一个如下定义的列:
created_date = Column(DateTime, nullable=False, default=datetime.now)
Run Code Online (Sandbox Code Playgroud)
我希望在其创建日期等于当前日期时查询实例(例如,如果它是今天创建的).
所以我尝试过这样的事情:
res = session.query(Object).filter(datetime.now() == Object.created_date)
Run Code Online (Sandbox Code Playgroud)
它永远不会起作用,因为我猜两个日期在几秒钟内进行比较,所以它们永远不会相互平等.然后我试过这个:
res = session.query(Object).filter((datetime.now() - Object.created_date).days < 1)
Run Code Online (Sandbox Code Playgroud)
虽然(datetime.now() - datetime.now()).days在python中工作,但它在我的情况下不起作用.我得到错误说:'BinaryExpression'对象和'Comparator'对象都没有属性'days'.
那么我应该如何进行过滤当天创建的实例的查询呢?谢谢!
我怀疑这(datetime.now() - datetime.now()).days是否有效,因为datetime.datetime实例只有 name 属性day而不是days. 使用datetime.now().days会导致AttributeError: 'datetime.datetime' object has no attribute 'days'
你可以试试这个:
from datetime import timedelta
res = session.query(Object).filter(
(Object.created_date+timedelta(days=1))>datetime.now())
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7036 次 |
| 最近记录: |