MST

星途 面试题库

面试题:Python中优化MySQL数据库查询的常用方法(Python与MySQL)

在Python中使用MySQLdb库连接MySQL数据库,假设有一张名为`users`的表,包含`id`、`name`、`age`字段,现在要查询年龄大于30岁的用户,并优化该查询,描述优化思路并给出Python代码实现。
45.3万 热度难度
编程语言Python

知识考点

AI 面试

面试题答案

一键面试

优化思路

  1. 确保索引:在age字段上添加索引,这样查询时数据库可以快速定位符合条件的数据,而无需全表扫描。
  2. 合理使用查询语句:避免使用SELECT *,只选择需要的字段,减少数据传输量。

Python代码实现

import MySQLdb

# 连接数据库
conn = MySQLdb.connect(
    host='localhost',
    user='your_username',
    passwd='your_password',
    db='your_database',
    port=3306,
    charset='utf8'
)

cursor = conn.cursor()

# 在age字段上创建索引(如果不存在)
cursor.execute('CREATE INDEX idx_age ON users(age)')

# 查询年龄大于30岁的用户,只选择id和name字段
query = "SELECT id, name FROM users WHERE age > 30"
cursor.execute(query)

results = cursor.fetchall()
for row in results:
    print(row)

cursor.close()
conn.close()