我在python中有代码:
base = db.connect(host='localhost', user='root', passwd='pass', db='employee')
cursor = base.cursor()
name_query = "SELECT * FROM `employee` WHERE `employeeID` IN %s LIMIT %s"
cursor.execute(name_query, ([9006,123],1))
列表中有多个值可以很好地工作,但如果列表中只有一个值,则会引发错误。有没有办法处理这个
答案 0 :(得分:0)
我不确定我是否完全理解了这个问题。但是我觉得只有一个值就可以这样使用:
cursor.execute(name_query, ([9006,],1))
答案 1 :(得分:0)
我认为这可能与额外的'逗号'有关:
select * from table where f1 in ('a',) limit 1; or
select * from table where f1 in ('a','b',) limit 1;
如果我在任一场景中删除最后一个逗号(无论极限值如何)都可以...至少在mysql中。