我正在尝试用python编写一个sql查询,我希望用户在其中传递一个保存在变量中的日期。然后我希望这在查询中得到处理。虽然在R中这样做相当容易,但我很好奇在python中是否也有一个简单的方法。日期应该在2022-12-12的地方传递。
date = input("this format YYYY-MM-DD")
query_new_Limits = """
SELECT #######
, a.RULE_NAME
, a.RESULT_VALUE
, a.SUMMARY_DETAIL
, a.REF_DATE
FROM ######## a ################### b
ON b.T_PORTFOLIO_ID = a.PORTFOLIO_ID
WHERE a.REF_DATE = TO_DATE('2022-12-12','YYYY-MM-DD')
AND REGEXP_LIKE(a.PORTFOLIO_CODE,'^[[:digit:]]+$')
AND NOT b.POR_INVESTMENT_TYPE IN #######
AND b.REF_TO_DATE > TO_DATE('2022-12-12','YYYY-MM-DD')
AND a.RESULT_STATE_ID > 12
"""
2条答案
按热度按时间guykilcj1#
从docs
在SQL和PL/SQL语句中,与Oracle数据库之间传递数据的SQL和PL/SQL语句应使用占位符来标记提供或返回数据的位置。这些占位符称为绑定变量或绑定参数。绑定变量是以冒号为前缀的标识符或数字。例如,以下SQL语句中有两个绑定变量(dept_id和dept_name):
[or命名绑定]
应用到您的示例中,得出:
7vhp5slm2#
给你个建议: