【问题标题】:How to calculate past 1 day interval from current time in sqlalchemy如何从 sqlalchemy 中的当前时间计算过去 1 天的间隔
【发布时间】:2015-11-04 11:34:15
【问题描述】:

我希望能够通过检查 datetime 列是否高于现在()前 1 天的某个日期来过滤 sqlalchemy 查询。

任何想法这样做的正确语法是什么?

注意

1 .sqlalchemy 查询应如下所示:
one_day_interval_before = ? result = session.query(People).filter(People.registered_at>= one_day_interval_before).all()

  1. python 中检索到的日期时间应该能够与 mysql 日期时间字段进行比较,格式为(年-月-日时:分:秒)

【问题讨论】:

    标签: python python-2.7 sqlalchemy


    【解决方案1】:

    对于 Python 中的时间间隔,请使用 datetime.timedelta。前一天是那时:

    from datetime import datetime, timedelta
    
    one_day_interval_before = datetime.now() - timedelta(days=1)
    

    【讨论】:

      【解决方案2】:

      你也可以使用func,它包含了大部分的sql函数

      from sqlalchemy import func
      result = session.query(People)\
          .filter(People.registered_at>= func.ADDDATE(func.NOW(), -1)).all()
      

      【讨论】:

        【解决方案3】:
        datetime.datetime.strftime(datetime.datetime.now()-datetime.timedelta(1),'%Y-%m-%d')
        

        【讨论】:

          猜你喜欢
          • 2020-10-07
          • 1970-01-01
          • 1970-01-01
          • 2023-04-08
          • 2022-10-06
          • 2013-07-16
          • 2012-06-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多