Python 参数化SQL查询中pg_trgm%运算符存在问题

Python 参数化SQL查询中pg_trgm%运算符存在问题,python,postgresql,psycopg2,Python,Postgresql,Psycopg2,这可能是一个极其愚蠢的问题 psyco2pg或postgres都不喜欢相似性操作符。这项工作: sql = 'Select * from movie where title = %s' data = ('Clockers',) cur.execute(sql, data) 但当我将运算符更改为pg_trgm模块的“%”时,会出现“元组索引超出范围”错误 sql = 'Select * from movie where title % %s' data = ('Clockers',) cur.e

这可能是一个极其愚蠢的问题

psyco2pg或postgres都不喜欢相似性操作符。这项工作:

sql = 'Select * from movie where title = %s'
data = ('Clockers',)
cur.execute(sql, data)
但当我将运算符更改为pg_trgm模块的“%”时,会出现“元组索引超出范围”错误

sql = 'Select * from movie where title % %s'
data = ('Clockers',)
cur.execute(sql, data)

有解决办法吗?

试试
title%%%s


(从评论中复制粘贴)

就是这样做的。但愿我能同意你的回答。谢谢这是一个非常好的问题:-)