如何使用to_date函数过滤数据以从python中的sql查询中的时间戳过滤yyyymm
在尝试根据时间戳列过滤数据时,我会遇到错误。
输入
domain_name INSERT_DATE LOC
KNEU/TEREX 2019-05-08 12:05:13 AL
KNEU/TEREX 2019-05-16 11:45:49 BI
KNEU/TEREX 2019-05-21 11:45:49 MY
KNEU/TEREX 2014-09-11 11:45:49 SG
KNEU/TEREX 2014-09-11 11:45:49 IL
我的代码
sql3 = """select * from location where domain_name = 'KNEU/TEREX'and to_date(INSERT_DATE,'YYYY-MM')=2019-05 """
dfotm4 = pd.read_sql_query(sql3, connection3)
错误
DatabaseError: Execution failed on sql 'select * from location where domain_name = 'KNEU/TEREX'and to_date(INSERT_DATE,'YYYY-MM')=2019-05 ': ORA-00932: inconsistent datatypes: expected DATE got NUMBER
预期输出
domain_name INSERT_DATE LOC
KNEU/TEREX 2019-05-08 12:05:13 AL
KNEU/TEREX 2019-05-16 11:45:49 BI
KNEU/TEREX 2019-05-21 11:45:49 MY
我的代码中有什么问题。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
为了比较
sql
的年度和月份,我们可以使用月(表达)和代码中的错误是因为您尚未包装
2019-05
在报价中,它应该是'2019-05'
In order to compare year and month in
SQL
, we can make use of the MONTH(expression) and YEAR(expression)Error in your code is because you haven't wrapped
2019-05
in quotes, it should've been'2019-05'