在操作 MySQL 数据库时,常常需要对查询结果进行排序。使用 ORDER BY
子句能让我们将结果按指定列进行升序或降序排列。下面示例展示了如何用 Python + MySQL 来实现这一功能。
1. 通过 ORDER BY 实现升序排序
以下代码示例,按 name
列进行字母顺序(默认升序)排列:
import mysql.connector
mydb = mysql.connector.connect(
host="localhost",
user="yourusername", # 替换成你的MySQL用户名
password="yourpassword", # 替换成你的MySQL密码
database="mydatabase" # 替换成你的数据库名
)
mycursor = mydb.cursor()
# SQL语句:按 name 列升序排序
sql = "SELECT * FROM customers ORDER BY name"
mycursor.execute(sql)
myresult = mycursor.fetchall()
for row in myresult:
print(row)
上述代码会将 customers
表中所有记录按 name
字段从 A 到 Z 排序。
2. 通过 DESC 关键字实现降序排序
如果想逆序显示结果,只需在语句中加入 DESC
:
sql = "SELECT * FROM customers ORDER BY name DESC"
mycursor.execute(sql)
myresult = mycursor.fetchall()
for row in myresult:
print(row)
这样查询结果会按 name
字段从 Z 到 A 排列。
3. 小结
- ORDER BY 可让你指定某列进行排序,默认升序。
- 想要降序,则在列名后加上
DESC
。 - 适用于任何 SELECT 查询,能让数据呈现更有规律、更便于阅读。
通过以上示例,你即可在 Python + MySQL 查询中灵活设置结果的排序方式。