python - 无法获取 2 dateTime 之间的数据
问题描述
from pymysql import *
import pandas.io.sql as sql
from datetime import datetime, date, timedelta
current_date = date.today()
print(current_date)
current_date2 = current_date - timedelta(1)
print("Yesterday was: ", current_date2)
# connect the mysql with the python
con = connect(user="root", password="12345", host="localhost", database="test")
df = sql.read_sql('select * from tbl1 where datetime1 >= "2020-11-15" and datetime1 <= '"current_date"' ', con)
# print the data
print(df)
当我尝试将其DateTime
作为变量传递时,它会生成一个错误:
pandas.io.sql.DatabaseError: sql 'select * from tbl1 where datetime1 >= "current_date2" and datetime1 <= current_date': (1525, "Incorrect DATETIME value: 'current_date2'")
解决方案
尝试这个:
'select * from tbl1 where datetime1 >= "2020-11-15" and datetime1 <= "{0}"'.format(current_date)
现在应该是这样的
df = sql.read_sql('select * from tbl1 where datetime1 >= "2020-11-15" and datetime1 <= "{0}"'.format(current_date), con)
如果有 2 个参数,则:
df = sql.read_sql('select * from tbl1 where datetime1 >= "{0}" and datetime1 <= "{1}"'.format(current_date2,current_date), con)
推荐阅读
- javascript - 在 React 中将图像设置为嵌套状态的问题
- fedora - Wireguard 拒绝在 Fedora 31 上运行:协议不受支持
- google-app-engine - 您如何执行从 App Engine 到内部服务的 HTTP 请求?
- visual-studio - 可以像 vim 这样的 Visual Studio 代码块修改吗?
- clojurescript - cljs中的MapBox:从地图中删除标记(将它们存储在原子中之后)
- go - 将 []struct_instance 转换为 []struct
- excel - 复印表:名称“XX”已存在。单击“是”以使用该版本的名称,或单击“否”以重命名您正在移动或复制的“XX”版本
- powershell - 使用 powershell 获取许多 zip 文件的未压缩大小
- python - 如何设置查询 tweepy 的限制?
- apache-spark - Spark,从 Kafka 流中读取失败 AnalysisException