pandas read_sql带参数和通配符运算符

时间:2016-09-14 10:39:55

标签: python sql pandas wildcard

我试图通过python从sql检索数据,代码为:

query = ("SELECT stuff FROM TABLE WHERE name like %%(this_name)s%")
result = pd.read_sql(query,con=cnx,params={'this_name':some_name})

当我不必传递通配符运算符%时,上面的代码工作正常。 但是,在这种情况下,代码不起作用。如何传递通配符运算符的查询?谢谢。

2 个答案:

答案 0 :(得分:2)

考虑将通配符运算符%连接到传入的值:

query = ("SELECT stuff FROM TABLE WHERE name LIKE %(this_name)s") 
result = pd.read_sql(query,con=cnx, params={'this_name': '%'+ some_name +'%'})

答案 1 :(得分:0)

尝试使用文档字符串和一些类似模式的引号。看来您正在使用pyformat参数样式。

from PIL import Image
img = Image.open("image011.jpg")
area = (865, 731, 1077, 906)
cropped_img = img.crop(area)
cropped_img.save("cropped.jpg")