首页 > 数据库 >Flask 学习-95.Flask-SQLAlchemy 查询今天当天的数据

Flask 学习-95.Flask-SQLAlchemy 查询今天当天的数据

时间:2022-11-14 12:12:01浏览次数:72  
标签:-% SQLAlchemy Flask db 数据类型 datetime DATE 95

前言

查询今天的数据,或者查询某一天的数据
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

标签:-%,SQLAlchemy,Flask,db,数据类型,datetime,DATE,95
From: https://www.cnblogs.com/yoyoketang/p/16888621.html

相关文章

  • Flask框架:如何运用Ajax轮询动态绘图
    本文分享自华为云社区《​​Flask框架:运用Ajax轮询动态绘图​​》,作者:LyShark。Ajax是异步JavaScript和XML可用于前后端交互,在之前​​《Flask框架:运用Ajax实现数据交互》......
  • 2211-13 flask模板
    第3章:模板在一般的Web程序里,访问一个地址通常会返回一个包含各类信息的HTML页面。因为我们的程序是动态的,页面中的某些信息需要根据不同的情况来进行调整,比如对登录......
  • sqlalchemy的连接方式
    这是比较推荐的连接方式,基于threading.local实现的。#-*-coding:utf-8-*-fromsqlalchemyimportcreate_enginefromsqlalchemy.ormimportsessionmaker,sc......
  • sqlalchemy--m2m
    这一块先建个表,后面再讨论#-*-coding:utf-8-*-fromsqlalchemy.ext.declarativeimportdeclarative_basefromsqlalchemyimportcreate_engine,Column,String,......
  • 原生sqlalchemy
    一、简介SQLAlchemy是一个基于Python实现的ORM框架。该框架建立在DBAPI之上,使用关系对象映射进行数据库操作,简言之便是:将类和对象转换成SQL,然后使用数据API执行SQL并......
  • 白嫖永久服务器1668309535005
    阿贝云服务器注册免费领取1核1g内存5m宽带10g内存的云服务器,对于个人来说完全够用了。还有免费备案和虚拟主机,免备案对于搭建个人博客就很方便,部署了小项目上去,运行流畅不......
  • 白嫖永久服务器1668309595005
    阿贝云服务器注册免费领取1核1g内存5m宽带10g内存的云服务器,对于个人来说完全够用了。还有免费备案和虚拟主机,免备案对于搭建个人博客就很方便,部署了小项目上去,运行流畅不......
  • 2211-12 Hello Flask!
    本篇记录来自Flask入门教程第2章:Hello,Flask!第2章:Hello,Flask!追溯到最初,Flask诞生于ArminRonacher在2010年愚人节开的一个玩笑。后来,它逐渐发展成为一个......
  • Codeforces Round #695 (Div. 2) C
    C.ThreeBags我们发现这个题无非就是找一个最小的吸收了其他两组的数再回报过去但是自己组的只有两种选择要吗直接负汇报过去要吗就又要牺牲另一组的最小的一个数吸......
  • MySQL启动报错[ERROR] InnoDB: Trying to access page number 4294967295 in space 0,
    这篇文章是原来的《记一次mysql故障处理》,但是随着mysql问题越来越多,我感觉还是集合到一篇里面比较好,也方便之后问题复现的查找一、记一次mysql故障处理最近遇到的问......