python pymysql 查询 in 如果是未知长度的数组呢
时间: 2023-05-22 18:05:14 浏览: 239
可以将未知长度的数组转化成元组,然后在查询中使用IN语句进行查询,例如:
```Python
data_list = [1, 2, 3, 4, 5]
data_tuple = tuple(data_list)
sql = "SELECT * FROM table WHERE id IN %s"
cursor.execute(sql, (data_tuple,))
```
相关问题
python pymysql 查询 in
可以使用IN关键字进行多条件查询,比如:
```python
import pymysql
# 连接数据库
conn = pymysql.connect(host='localhost', user='root', password='123456', database='test', charset='utf8')
# 获取游标
cursor = conn.cursor()
# 查询数据,其中['apple', 'banana', 'orange']为查询条件
cursor.execute("SELECT * FROM fruits WHERE name IN ('apple', 'banana', 'orange')")
# 获取查询结果
result = cursor.fetchall()
# 输出查询结果
for row in result:
print(row)
# 关闭游标和连接
cursor.close()
conn.close()
```
以上代码使用IN关键字查询了名字为'apple'、'banana'、'orange'的水果信息。
python pymysql条件查询
Python pymysql模块是Python连接MySQL服务器的一个库。使用pymysql条件查询,需要先连接MySQL数据库,然后使用Python代码编写SQL语句进行查询。
以下是一个示例代码,演示如何使用pymysql进行条件查询:
```python
import pymysql
#连接MySQL数据库
conn = pymysql.connect(host='localhost', port=3306, user='root', password='123456', db='testdb')
#创建游标对象
cur = conn.cursor()
#编写SQL语句
sql = "SELECT * FROM students WHERE age > %s"
#执行SQL语句
cur.execute(sql, (18,))
#获取查询结果
result = cur.fetchall()
#输出查询结果
for row in result:
print(row)
#关闭游标和连接
cur.close()
conn.close()
```
以上代码中,先使用`pymysql.connect()`函数连接到MySQL数据库。然后创建游标对象,使用`execute()`方法执行SQL语句。其中,`%s`表示占位符,可以使用元组`(18,)`传入参数。最后使用`fetchall()`方法获取查询结果,再用循环输出结果。