如何在单个查询中对多个列进行排序?
mysqlmysqli database
我们可以通过使用 ORDER BY 子句提供多个列名,在单个查询中对多个列进行排序。上面的语法如下 −
语法
Select Col1,Col2,… from table_name ORDER BY Col1, Col2,…
示例
假设我们想按列 ‘Name’ 和 ‘RollNo’ 对名为 ‘Student’ 的表进行排序,那么我们可以为此编写单个查询,如下所示 −
mysql> Select Name, RollNo from student order by name,rollno; +--------+--------+ | name | rollno | +--------+--------+ | Aarav | 150 | | Aryan | 165 | | Gaurav | 100 | +--------+--------+ 3 rows in set (0.00 sec)
上述查询给出了排序后的输出结果 ‘Name’ 和 ‘Rollno’。我们还可以获取表的所有列作为输出结果,如下所示 −
mysql> Select * from student order by name,rollno; +--------+--------+--------+ | Name | RollNo | Grade | +--------+--------+--------+ | Aarav | 150 | M.SC | | Aryan | 165 | M.tech | | Gaurav | 100 | B.tech | +--------+--------+--------+ 3 rows in set (0.00 sec)