pymysql 查询值
时间: 2023-11-18 21:55:19 浏览: 98
pymysql查询值可以通过使用游标对象的execute()方法执行SQL语句,然后使用fetchone()或fetchall()方法获取查询结果。fetchone()方法返回一条记录,fetchall()方法返回所有记录。例如,查询test数据库user表中,工资大于100的名字都是有哪些,可以使用以下代码:
import pymysql.cursors
db = pymysql.connect(host='localhost', user='root', password='root', database='test')
# 使用 cursor() 方法创建一个游标对象 cursor
cursor = db.cursor()
# 查询工资大于100的数据
# 格式: select * from 表名 where 条件
sql = 'select name from user WHERE gongzi>100'
cursor.execute(sql)
# 这是查询表中所有的数据
rest = cursor.fetchall()
for i in rest:
print(i)
# 关闭数据库连接
db.close()
注意,在执行SQL语句时,需要根据实际情况修改表名、字段名和条件等信息。
相关问题
python pymysql 查询 in
可以使用如下代码进行 pymysql 中的 in 查询:
```
import pymysql
# 打开数据库连接
db = pymysql.connect("localhost", "root", "password", "test")
# 使用 cursor() 方法创建一个游标对象 cursor
cursor = db.cursor()
# SQL 查询语句
sql = "SELECT * FROM table_name WHERE field_name IN (%s, %s, %s)"
# 要查询的参数列表
params = ['value1', 'value2', 'value3']
# 执行查询
cursor.execute(sql, params)
# 获取查询结果
results = cursor.fetchall()
# 关闭游标和数据库连接
cursor.close()
db.close()
```
其中,`table_name` 是要进行查询的表名,`field_name` 是要查询的字段名,`value1`、`value2`、`value3` 是要查询的值,这里使用了参数列表的方式进行查询,避免了 SQL 注入的问题。
pymysql查询结果返回字典格式
可以使用pymysql的cursor类中的fetchall()方法将查询结果以元组的形式返回,再将元组转换成字典即可。
以下是一个示例代码:
```
import pymysql
# 连接数据库
conn = pymysql.connect(host='localhost', port=3306, user='root', password='password', db='test', charset='utf8')
# 创建游标
cursor = conn.cursor()
# 执行查询语句
sql = 'SELECT * FROM users'
cursor.execute(sql)
# 获取查询结果并转换为字典
results = cursor.fetchall()
columns = [col[0] for col in cursor.description]
data = [dict(zip(columns, row)) for row in results]
# 打印结果
print(data)
# 关闭连接
cursor.close()
conn.close()
```
这个代码会将查询结果转换成一个字典列表,每个字典表示一行记录,字典的键为列名,值为对应的值。
阅读全文