MySQL 如何按照MySQL中的查询结果排序?

MySQL 如何按照MySQL中的查询结果排序?

常见的情况是从表格中选择某些数据或行。选中的行会按照它们在表中出现的顺序返回。有时,我们可能需要按照某个列的升序或降序返回从表格中选出的行。

“ORDER BY”语句用于按照某个列对结果排序。下面的示例将提供更多的清晰度。

假设我们有一个包含多个字段(包括“name”字段)的表格。我们想从该表中选择所有行,但是我们希望行按照姓名的字母顺序返回给我们。这就是“ORDER BY”语句派上用场的地方。这种情况要求我们按照“name”字段的升序排列结果。

在默认情况下,“ORDER BY”语句按照指定的列进行升序排序。如果你想要按降序排序结果,则需要指定同样的关键字。要按降序排序结果,需要指定关键字“DESC”。

阅读更多:MySQL 教程

语法

升序排序

SELECT * FROM table_name ORDER BY column_name

降序排序

SELECT * FROM table_name ORDER BY column_name DESC

使用Python中的MySQL按顺序排序从表中检索的数据所涉及的步骤

  • 导入MySQL连接器

  • 使用connect()方法与连接器建立连接

  • 使用cursor()方法创建光标对象

  • 使用适当的mysql语句创建查询

  • 使用execute()方法执行SQL查询

  • 关闭连接

假设我们有一个名为“Student”的表格,如下所示——

+----------+---------+-----------+------------+
|    Name  |   Class |    City   | Marks      |
+----------+---------+-----------+------------+
|    Karan |    4    |  Amritsar |    95      |
|    Sahil |    6    |  Amritsar |    93      |
|    Kriti |    3    |    Batala |    88      |
|   Khushi |    9    |    Delhi  |    90      |
|    Kirat |    5    |    Delhi  |    85      |
+----------+---------+-----------+------------+

示例

我们想从表格中选择所有行,但按其姓名的字母顺序排列。简而言之,我们要按姓名的升序排列结果。

import mysql.connector

db=mysql.connector.connect(host="your host", user="your username", password="your
password",database="database_name")

cursor=db.cursor()

query= "SELECT * FROM Students ORDER BY Name"
cursor.execute(query)
for row in cursor:
   print(row)

以上代码成功执行时,将按学生姓名的升序或字母顺序返回行。

输出

(‘Amit’ , 9 , ‘Delhi’ , 90)
(‘Karan’, 4 ,’Amritsar’ , 95)
(‘Kriti’ , 3 , ‘Batala’ ,88)
(‘Priya’ , 5 , ‘Delhi’ ,85)
(‘Sahil’ , 6 , ‘Amritsar’ ,93)

所有显示的行都按照姓名的字母顺序排列。类似地,可以按照类似的语法以升序或降序方式排列成绩。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程