使用Python的mysql.connector,如何选择与元组匹配的所有记录?

例如:

ids = (b'6TRsHMzWSrq0zeembo0Vbg',
       b'7Qoq53lKTk-RZOi830t3MA',
       b'7ZGO9S3DTcGHjwrfpV0E0A')


然后查询将执行以下操作:

query = SELECT first_name
        FROM users
        WHERE id = (ids)


返回其ID出现在元组中的所有用户的记录

最佳答案

试试这个

query = "SELECT first_name FROM users WHERE id IN " + str(list(ids))
cursor.execute(query)


再考虑一下,以下内容也应该起作用

query = "SELECT first_name FROM users WHERE id IN " + str(ids)


编辑

OP在注释中提到ID是前一个查询返回的二进制数据。在这种情况下,从this answer中获取提示并使用BINARY运算符,以下查询应该可以工作

query = "SELECT first_name FROM users WHERE BINARY id IN " + str(ids) ;

关于python - mysql.connector使用二进制值选择查询,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24632761/

10-09 20:11
查看更多