Flask 学习-95.Flask-SQLAlchemy 查询今天当天的数据
2023-02-19 12:20:23 时间
前言
查询今天的数据,或者查询某一天的数据
SQL DATE() function
使我们能够从特定的历史或当前时间戳值访问日期值。
DATE() 函数
Date()函数返回从传递的datetime表达式中提取的日期。
DATE(datetime expression)
SQL 语句按create_time 获取某一天的数据
select * from mytable where DATE(create_time) == '2022-11-14'
获取今天的数据
方法一:
最原始的方法是给个开始时间和结束时间,用between
start = datetime.strptime("2022-11-14 00:00:00", "%Y-%m-%d %H:%M:%S")
end = datetime.strptime("2022-11-14 23:59:59", "%Y-%m-%d %H:%M:%S")
res = Students.query.\
filter(Students.create_time.between(start, end))\
.all()
print(res)
方法二:使用SQL CAST函数 使用cast函数可以获取datetime字段的date部分
先看CAST函数介绍:CAST (expression AS data_type)
参数说明: expression:任何有效的SQServer表达式。 AS:用于分隔两个参数,在AS之前的是要处理的数据,在AS之后是要转换的数据类型。 data_type:目标系统所提供的数据类型,包括bigint和sql_variant,不能使用用户定义的数据类型。 用CAST函数进行数据类型转换时,在下列情况下能够被接受: (1)两个表达式的数据类型完全相同。 (2)两个表达式可隐性转换。 (3)必须显式转换数据类型。
使用示例
# 这里等价于把datetime.datetime.now()的日期部分截取出来做比较,必须都转换成db.DATE类型
res = Students.query.filter(
db.cast(Students.create_time, db.DATE) == db.cast(datetime.now(), db.DATE)
).all()
print(res)
参考博客https://blog.csdn.net/qq_37289115/article/details/110916838
相关文章
- Halo添加自定义页面
- 用桌面图标模拟FlappyBird游戏
- vivo 故障定位平台的探索与实践
- vivo 实时计算平台建设实践
- vivo 服务端监控体系建设实践
- vivo 游戏中心低代码平台的提效秘诀
- vivo 低代码平台【后羿】的探索与实践
- 分支路径图调度框架在 vivo 效果广告业务的落地实践
- vivo 云原生容器探索和落地实践
- 云原生时代数据库运维体系演进
- 异构混排在vivo互联网的技术实践
- 规则引擎Drools在贷后催收业务中的应用
- vivo大数据日志采集Agent设计实践
- Bigkey问题的解决思路与方式探索
- vivo霍金实验平台设计与实践-平台产品系列02
- 探究Presto SQL引擎(4)-统计计数
- 从 Wepy 到 UniApp 变形记
- 如何实现一个SQL解析器
- vivo平台化实践探索之旅-平台产品系列01
- 从0到1设计通用数据大屏搭建平台