具有动态值的Python MYSQL SELECT

时间:2016-11-13 19:55:25

标签: python mysql

我有一个查询功能,我希望动态放置值。

query_values = {
    "column_value": question["value"],
    "value_2": question["value_2"],
    "startdate": date_range["start"],
    "enddate": date_range["end"]
}

query = (
        "SELECT %(column_value)s FROM ga_ad_matched_query "
        "WHERE (ga_ad_matched_query LIKE %(value_2)s) AND "
        "(stat_date BETWEEN %(enddate)s AND %(startdate)s)"
    )
cur.execute(query, query_values)

一切正常但如果我使用%(column_values)变量,我会将问题[" value"]的内容输入到结果中,而不是列后面的实际值。如果我不使用%(column_values)变量,但使用列的列的常规名称,一切都很好。 ....但是它需要动态地使用这个函数,所以我需要在那里放置%(column_values)。

我在这里监督是否存在语法错误? 谢谢你的帮助。

1 个答案:

答案 0 :(得分:-1)

尝试使用更简单的查询作为字符串语法:

OR