如何使用sql查询修复python中的数据获取函数?

How to fix a data fetching function in python using sql query?

提问人:Moinak Dey 提问时间:7/5/2023 更新时间:7/5/2023 访问量:38

问:

我开发了一个函数,它使用基于用户输入的参数化 sql 来获取记录。但是,我在查询的 where 子句中遇到了类型不匹配问题。请帮我修复它。 Start_Date 和 End_Date 是字符串类型,而 record_date 是 datetime64[ns]。 错误指出了 record_date 和 start_date 之间的比较,并且end_date类型不匹配。

Python SQL 数据科学 分析 dremio

评论

0赞 Moinak Dey 7/5/2023
start_date = input(“输入开始日期 (YYYY-MM-DD): ”) 月 = int(input(“输入月数: ”)) start_date = datetime.datetime.strptime(start_date, “%Y-%m-%d”) end_date = start_date + relativedelta(months=months) start_date = str(start_date.date()) end_date = str(end_date.date()) sql_A = f“”“ SELECT a.record_date, a.x FROM edm.dm_{brand_name} a 左联接 edm.dm_{brand_name}_x b ON a.x = b.x AND a.record_date = b.record_date WHERE a.record_date >='{start_date}' AND a.record_date<= '{end_date}' “””
0赞 Ludi 7/5/2023
嗨,您可以使用 sql 中的 to_date 函数将字符串转换为数据库日期 w3schools.com/sql/sql_dates.asp。每种sql数据库类型(Postgres / Mysql ...最好的方法是让你的数据库框架处理这个问题,并使用适当的参数。这里是一个 sqlalchemy 示例:tutorialspoint.com/sqlalchemy/...
0赞 Moinak Dey 7/5/2023
不工作兄弟

答: 暂无答案