我有一个 API 端点,如下所示:
http://127.0.0.1:5000/data?params= 西类牙语、意大利语、英语
这是我在 myflask.py 中的代码:
@app.route("/data", methods=["GET"])
def my_api():
query = "SELECT * from tablex WHERE "
params = request.args.get("params")
if params:
query += "col IN ('{}');".format(params)
我期望输出的是这个查询:
“SELECT * from tablex WHERE col in ('西类牙语', '意大利语', '英语');”
但是我得到的是
“SELECT * from tablex WHERE col in ('西类牙语、意大利语、英语');”
我也尝试过这个:
query += "col IN ('{}');".format(','.join(params))
但没有成功
最佳答案
也许这可以帮助你:
languages = ['spanish','italian','english']
string = ','.join(['%s'] * len(languages))
print("SELECT * from tablex WHERE col IN (%s)" % string,tuple(languages))
但我建议您更改 PROCEDURE 的 SELECT。
关于python - 如何将 url 参数作为字符串元组传递给 mysql 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58793149/