精华内容
下载资源
问答
  • 在MySQLSELECT 语句中,ORDER BY 子句主要用来将结果集中的数据按照一定的顺序进行排序。其语法格式为:ORDER BY { | | } [ASC|DESC]语法说明如下。1) 列名指定用于排序的列。可以指定多个列,列名之间用逗号分隔。2...

    在MySQL SELECT 语句中,ORDER BY 子句主要用来将结果集中的数据按照一定的顺序进行排序。

    其语法格式为:

    ORDER BY { | | } [ASC|DESC]

    语法说明如下。

    1) 列名

    指定用于排序的列。可以指定多个列,列名之间用逗号分隔。

    2) 表达式

    指定用于排序的表达式。

    3) 位置

    指定用于排序的列在 SELECT 语句结果集中的位置,通常是一个正整数。

    4) ASC|DESC

    关键字 ASC 表示按升序分组,关键字 DESC 表示按降序分组,其中 ASC 为默认值。这两个关键字必须位于对应的列名、表达式、列的位置之后。

    使用 ORDER BY 子句应该注意以下几个方面:

    ORDER BY 子句中可以包含子查询。

    当排序的值中存在空值时,ORDER BY 子句会将该空值作为最小值来对待。

    当在 ORDER BY 子句中指定多个列进行排序时,MySQL 会按照列的顺序从左到右依次进行排序。

    查询的数据并没有以一种特定的顺序显示,如果没有对它们进行排序,则将根据插入到数据表中的顺序显示。使用 ORDER BY 子句对指定的列数据进行排序。

    【实例 1】查询 tb_students_info 表的 height 字段值,并对其进行排序,输入的 SQL 语句和执行结果如下所示。

    mysql> SELECT * FROM tb_students_info ORDER BYheight;+----+--------+---------+------+------+--------+------------+

    | id | name | dept_id | age | sex | height | login_date |

    +----+--------+---------+------+------+--------+------------+

    | 2 | Green | 3 | 23 | F | 158 | 2016-10-22 |

    | 1 | Dany | 1 | 25 | F | 160 | 2015-09-10 |

    | 4 | Jane | 1 | 22 | F | 162 | 2016-12-20 |

    | 7 | Lily | 6 | 22 | F | 165 | 2016-02-26 |

    | 10 | Tom | 4 | 23 | M | 165 | 2016-08-05 |

    | 8 | Susan | 4 | 23 | F | 170 | 2015-10-01 |

    | 6 | John | 2 | 21 | M | 172 | 2015-11-11 |

    | 5 | Jim | 1 | 24 | M | 175 | 2016-01-15 |

    | 9 | Thomas | 3 | 22 | M | 178 | 2016-06-07 |

    | 3 | Henry | 2 | 23 | M | 185 | 2015-05-31 |

    +----+--------+---------+------+------+--------+------------+

    10 rows in set (0.08 sec)

    该语句通过指定 ORDER BY 子句,MySQL 对查询的 height 列的数据按数值的大小进行了升序排序。

    有时需要根据多列进行排序。对多列数据进行排序要将需要排序的列之间用逗号隔开。

    【实例 2】查询 tb_students_info 表中的 name 和 height 字段,先按 height 排序,再按 name 排序,输入的 SQL 语句和执行结果如下所示。

    mysql> SELECTname,height-> FROMtb_students_info-> ORDER BYheight,name;+--------+--------+

    | name | height |

    +--------+--------+

    | Green | 158 |

    | Dany | 160 |

    | Jane | 162 |

    | Lily | 165 |

    | Tom | 165 |

    | Susan | 170 |

    | John | 172 |

    | Jim | 175 |

    | Thomas | 178 |

    | Henry | 185 |

    +--------+--------+

    10 rows in set (0.09 sec)

    注意:在对多列进行排序时,首行排序的第一列必须有相同的列值,才会对第二列进行排序。如果第一列数据中所有的值都是唯一的,将不再对第二列进行排序。

    默认情况下,查询数据按字母升序进行排序(A~Z),但数据的排序并不仅限于此,还可以使用 ORDER BY 对查询结果进行降序排序(Z~A),这可以通过关键字 DESC 实现。可以对多列进行不同的顺序排序。

    【实例 3】查询 tb_students_info 表,先按 height 降序排序,再按 name 升序排序,输入的 SQL 语句和执行过程如下所示。

    mysql> SELECT name,height FROM tb_student_info ORDER BY height DESC,name ASC;+--------+--------+

    | name | height |

    +--------+--------+

    | Henry | 185 |

    | Thomas | 178 |

    | Jim | 175 |

    | John | 172 |

    | Susan | 170 |

    | Lily | 165 |

    | Tom | 165 |

    | Jane | 162 |

    | Dany | 160 |

    | Green | 158 |

    +--------+--------+

    10 rows in set (0.00 sec)

    注意:DESC 关键字只对前面的列进行降序排列,在这里只对 height 排序,而并没有对 name 进行排序,因此,height 按降序排序,而 name 仍按升序排序,如果要对多列进行降序排序,必须要在每一列的后面加 DESC 关键字。

    展开全文
  • 在SQL查询结果集中,记录的顺序是按它们在表中的顺序进行排列的,可以使用ORDER BY子句对查询结果按照给定的字段值重新进行排序排序支持升序和降序,升序按照从低到高或者从小到大,降序按照从高到低或者从大到小...

    在SQL查询结果集中,记录的顺序是按它们在表中的顺序进行排列的,可以使用ORDER BY子句对查询结果按照给定的字段值重新进行排序。排序支持升序和降序,升序按照从低到高或者从小到大,降序按照从高到低或者从大到小。在ORDER BY子句后面添加关键字ASC可以让返回的记录按升序排序,添加关键字DESC可以让返回的记录按降序排序,如果省略ASC(升序)或DESC(降序),系统则默认为升序。需要注意的是关键字ASC(升序)或DESC(降序)只能单独使用,不能同时使用。

    ORDER BY子句后面是待排序的字段。若字段的值是数值,进行ASC(升序)排序时,记录按照字段的值从小到大进行排序。进行DESC(降序)排序时,记录按照字段的值从大到小进行排序;若字段的值是字符串时,排序会按照字典顺序进行。

    例1:查询mooc数据库的course表,查询返回的结果集按照价格字段升序排序。

    例1要求按照价格字段升序排序,可以使用ORDER BY子句对查询返回的结果集排序,如果没有WHERE子句,ORDER BY子句可以直接添加在FROM子句后面。在查询窗口输入下面的SQL语句。

    select * FROM course ORDER BY price ASC

    在上面的SQL语句中将返回按照price字段值升序排序的课程记录。SQL查询结果如下图所示。

    28911e05e1e6ce13a188202b11fecbd1.png

    例2:查询mooc数据库的course表,查询返回的结果集按照价格字段降序排序。

    查询内容同例1相同,排序要求按照价格字段的值降序排序。在查询窗口输入下面的SQL语句。

    select * FROM course ORDER BY price DESC

    在上面的SQL语句中将返回按照price字段值降序排序的课程记录。SQL查询结果如下图所示。

    4956dfb460e77711b0b416b0723bb600.png

    例3:查询mooc数据库的course表,查询返回的结果集按照课程名称排序。

    例3要求按照课程名称字段进行排序,课程名称字段的值是字符串,排序规则是字典顺序。在查询窗口输入下面的SQL语句。

    select * FROM course ORDER BY name

    在上面的SQL语句中,ORDER BY子句name字段后面没有添加排序关键字,MySQL默认为升序排序。SQL查询结果如下图所示。

    eebb60338e38e38f59c9466b39e61e78.png

    例4:查询mooc数据库的course表,查询返回的结果集按照课程名称降序排序。

    查询内容同例3相同,排序要求按照课程名称字段的值降序排序。在查询窗口输入下面的SQL语句。

    select * FROM course ORDER BY name DESC

    在上面的SQL语句中,在ORDER BY子句name字段后面添加DESC关键字,返回结果集将以字典顺序降序排序。SQL查询结果如下图所示。

    e1fcf9f5f19707b0455cec517e83f063.png

    例5:查询mooc数据库的course表,查询课程类别为机器学习的课程记录,并按照课程价格降序排序。

    查询内容要求类别为机器学习的课程并按照价格降序排序。在查询窗口输入下面的SQL语句。

    select * FROM course WHERE category = "机器学习" ORDER BY price DESC

    在上面的SQL语句中,首先查询出类别为“机器学习”的课程记录,然后再按照价格字段降序排序。SQL查询结果如下图所示。

    c900e9902c1e9de904f081282ac1ad9e.png

    例6:查询mooc数据库的course表,查询所有课程记录,并按照课程名称、价格字段升序排序。

    查询内容要求按课程名称和价格两个字段值进行排序,对于多个字段排序,MySQL会先对第一个字段进行排序,然后在排序的基础上再对后面的字段进行排序,依次类推,字段与字段之间用英文逗号分隔。在查询窗口输入下面的SQL语句。

    select * FROM course ORDER BY name,price

    在上面的SQL语句中,SQL会先按照name排序,然后再按照price排序,前提是先要满足name排序。SQL查询结果如下图所示。

    8303c1df3d53e97706a9d5b46bc4d70b.png

    展开全文
  • 摘要:C#源码,数据库应用,数据排序 C#数据库升序、降序排列数据,联合查询后的结果进行排序,在SQL语句中经常用到读取到的数据集进行排序的问题,本例是在联合查询后进行的数据库升序排列和降序排列,有兴趣的...
  • 对查询结果进行排序

    2019-03-24 15:36:21
    order by 列名[asc|desc] 升序或降序排序 .../*注意:缺省为升序排序*/ 二、多列排序 按照多个列进行排序,默认升序,如:相同价格时,按库存排序 select * from bookinfo order by price,sto...
    order by 列名[asc|desc]  升序或降序排序

    单列排序、多列排序、指定排序方向

    一、单列排序

    select * from bookinfo order by price desc;
    /*注意:缺省为升序排序*/

    二、多列排序

    按照多个列进行排序,默认升序,如:相同价格时,按库存排序

    select * from bookinfo order by price,store;

    三、指定排序方向

    按价格升序排序,出现相同价格的图书,可按库存进行降序排序

    select * from bookinfo order by price ,store desc;

     

    展开全文
  • 如果我们需要读取的数据进行排序,我们就可以使用 MySQL 的 ORDER BY 子句来设定你想按哪个字段哪中方式来进行排序,再返回搜索结果。语法以下是 SQL SELECT 语句使用 ORDER BY 子句将查询数据排序后再返回数据:...
    192f9cd4f6dce6b5102de1623895c116.png

    MySQL排序

    我们知道从 MySQL 表中使用 SQL SELECT 语句来读取数据。

    如果我们需要对读取的数据进行排序,我们就可以使用 MySQL 的 ORDER BY 子句来设定你想按哪个字段哪中方式来进行排序,再返回搜索结果。

    语法

    以下是 SQL SELECT 语句使用 ORDER BY 子句将查询数据排序后再返回数据:

    SELECT field1, field2,...fieldN table_name1, table_name2...ORDER BY field1, [field2...] [ASC [DESC]]

    你可以使用任何字段来作为排序的条件,从而返回排序后的查询结果。

    你可以设定多个字段来排序。

    你可以使用 ASC 或 DESC 关键字来设置查询结果是按升序或降序排列。 默认情况下,它是按升序排列。

    你可以添加 WHERE...LIKE 子句来设置条件。

    在命令提示符中使用 ORDER BY 子句

    以下将在 SQL SELECT 语句中使用 ORDER BY 子句来读取MySQL 数据表 runoob_tbl 中的数据:

    实例

    尝试以下实例,结果将按升序及降序排列。

    mysql> use OPENKETANG;Database changedmysql> SELECT * from openketang_tbl ORDER BY submission_date ASC; +-----------+---------------+---------------+-----------------+ | openketang_id | openketang_title | openketang_author | submission_date | +-----------+---------------+---------------+-----------------+ | 3 | 学习 Java | OPENKETANG.COM | 2015-05-01 | | 4 | 学习 Python | OPENKETANG.COM | 2016-03-06 | | 1 | 学习 PHP | 阿里云大学 | 2017-04-12 | | 2 | 学习 MySQL |阿里云大学 | 2017-04-12 | +-----------+---------------+---------------+-----------------+4 rows in set (0.01 sec) mysql> SELECT * from openketang_tbl ORDER BY submission_date DESC; +-----------+---------------+---------------+-----------------+| openketang_id | openketang_title | openketang_author | submission_date | +-----------+---------------+---------------+-----------------+ | 1 | 学习 PHP | 阿里云大学 | 2017-04-12 | | 2 | 学习 MySQL | 阿里云大学 | 2017-04-12 | | 4 | 学习 Python | OPENKETANG.COM | 2016-03-06 | | 3 | 学习 Java | OPENKETANG.COM | 2015-05-01 | +-----------+---------------+---------------+-----------------+ 4 rows in set (0.01 sec)

    读取 openketang_tbl 表中所有数据并按 submission_date 字段的升序排列。

    在 PHP 脚本中使用 ORDER BY 子句

    你可以使用PHP函数的 mysqli_query() 及相同的 SQL SELECT 带上 ORDER BY 子句的命令来获取数据。

    该函数用于执行 SQL 命令,然后通过 PHP 函数 mysqli_fetch_array() 来输出所有查询的数据。

    实例

    尝试以下实例,查询后的数据按 submission_date 字段的降序排列后返回。

    <?php $dbhost = 'localhost:3306'; // mysql服务器主机地址$dbuser = 'root'; // mysql用户名$dbpass = '123456';  // mysql用户名密码$conn = mysqli_connect($dbhost, $dbuser, $dbpass); if(! $conn ){ die('连接失败: ' . mysqli_error($conn));} // 设置编码,防止中文乱码mysqli_query ($conn , "set names utf8"); $sql = 'SELECT openketang_id, openketang_title,  openketang_author, submission_date FROM openketang_tbl  ORDER BY submission_date ASC'; mysqli_select_db( $conn, 'OPENKETANG' ); $retval = mysqli_query( $conn, $sql ); if(! $retval ){die('无法读取数据: ' . mysqli_error($conn)); }echo '

    <?php $dbhost = 'localhost:3306'; // mysql服务器主机地址$dbuser = 'root'; // mysql用户名$dbpass = '123456'; // mysql用户名密码$conn = mysqli_connect($dbhost, $dbuser, $dbpass); if(! $conn ){ die('连接失败: ' . mysqli_error($conn));} // 设置编码,防止中文乱码mysqli_query ($conn , "set names utf8"); $sql = 'SELECT openketang_id, openketang_title, openketang_author, submission_date FROM openketang_tbl ORDER BY submission_date ASC'; mysqli_select_db( $conn, 'OPENKETANG' ); $retval = mysqli_query( $conn, $sql ); if(! $retval ){die('无法读取数据: ' . mysqli_error($conn)); }echo '

    阿里云大学 MySQL ORDER BY 测试

    '; echo '教程 ID标题 作者提交日期'; while($row = mysqli_fetch_array($retval, MYSQL_ASSOC)) { echo " {$row['openketang_id']} ". "{$row['openketang_title']} "."{$row['openketang_author']} ". "{$row['submission_date']} ". "";}echo ''; mysqli_close($conn);?> MySQL ORDER BY 测试

    '; echo '

    教程 ID标题 作者提交日期
    {$row['openketang_id']}{$row['openketang_title']} {$row['openketang_author']} {$row['submission_date']}
    '; mysqli_close($conn);?>

    输出结果如下图所示:

    3d51c4017eeb473582d037bef1d38e55.png

    完整MySQL教程:阿里云大学——开发者课堂(点击下面“了解更多”查看)

    展开全文
  • 使用order by 对查询结果进行排序。 在order by 中列名的后面使用关键字ASC进行升序排序,使用DESC进行降序排序。 order by 中可以指定多个排序键。 排序键中包含NULL时,会在开头或结尾进行汇总。 order by 中可以...
  • sql语法基础,对查询结果进行排序

    千次阅读 2019-11-09 21:13:15
    下面我们一起来学习一下,如何对查询结果进行排序 01 order by子句 格式: SELECT 列名1,列名2。。。。。 FROM 表名 ORDER BY 排序基准1,排序基准2,。。。。 例一:对于售价按照升序排列 SELECT product_...
  • 1、指定列进行排序(单列排序) 单列排序要素 一、排序依据 二、排序方式 语法: select col_list from table_name order by order_by_list [asc|desc] 示例:查询分数表中编号为1的所有分数信息,并按照分数升序...
  • 按速率降序,年龄升序,身高降序,体重升序排序请参阅帮助文件中位于ORDER BY子句中的示例[^]
  • 在这种情况下,推荐的方法是数据库中的数据进行排序,在查询结尾处添加ORDER BY,这样取得结果,如下所示:SELECT temperature FROM temperatures ORDER BY temperature ASC; -- ascending orderSELECT ...
  • ASC 是升序,DESC是降序,默认是升序排列,注意,这里是对查询结果进行排序 按照年龄的升序, 降序排列 mysql> SELECT*FROM cms_user ORDER BY id ASC; +----+-----------+--------------+-------------+--------...
  • 1.ORDER BY子句中书写的列的名称为排序键 2.子句的书写顺序为: 1.SELECT子句,2.FROM 子句,WHERE 子句4.GROUP BY子句5.HAING子句6.ORDER BY子句 3.使用ORDER BY 子句来明确指定排列顺序 指定升序或降序 1想要...
  • MySQL 使用ORDER BY对查询结果进行排序

    千次阅读 2020-03-08 09:46:08
    使用ORDER BY子句对查询返回的结果按一列或多列排序。ORDER BY子句的语法格式为: ORDER BY {column_name [ASC|DESC]} [,…n]        其中ASC表示升序,为默认值,DESC为降序。...
  • 查询完表中的数据后,很多时候需要数据进行排序,来观察数据的情况。MySQL 中使用 order by 对表中的数据进行排序,默认为升序,如果要降序的话,再加上 desc 关键字。order by 语句的语法如下:select <列名1&...
  • 默认按升序排列。 ASC表示升序 DESC表示降序排列
  • 一、ORDER BY 子句 ORDER BY 子句中书写的列名称为排序键。 ...ORDER BY 和 WHERE并用时 SELECT 的执行顺序: ...省略关键字会默认升序进行排列。 升序关键字:ASC ascendent上升的 降序关...
  • 数据库类型:SQL Server 升序(默认为升序): select * from products order by price [asc] 降序:select * from products order by price desc
  • MySQL对查询结果排序

    万次阅读 2017-07-09 12:05:03
    使用ORDER BY对查询结果进行排序SELECT 字段名1,字段名2,…… FROM 表名 ORDER BY 字段名1 [ASC|DESC],字段名2[ASC|DESC]……参数说明指定的字段名1、字段名2,是对查询结果排序的依据 参数ASC,表示按照升序...
  • 一、需求的目的是要求查询出考生信息根据考场号和座位号进行升序排序,但是存在同一考生参加多场考试,因此查询结果相同人员需要去重保持唯一 原有示例结果集 目标结果集 1、原有SQL仅通过distinct结果...
  • VC6.0 联合查询后的结果进行排序获得的记录集进行排序,这是个同样实用的功能,特别在一些中小企业的数据库系统中,尤其实用,数据分析很有帮助。本例子中的排序主要是两种常用形式:升序排列和降序排列。...
  • SQL 语法中 ORDER BY 关键字用于对查询结果进行排序排序分为升序(ASC)和降序(DESC)两种,当不使用 ORDER BY 指定排序方式时,默认为升序。 语法: SELECT column,… FROM tb_name ORDER BY column1,column2...
  • My SQL 对查询结果排序

    千次阅读 2016-10-04 22:21:12
    1.指定单列进行排序  查询分数表中编号为1的所有分数信息... 1.1升序排序 SELECT * FROM scores WHERE gno=1 ORDER BY score ASC  1.2降序排序 SELECT * FROM scores WHERE gno=1 ORDER BY score DESC  2
  • 从表中查询出来的数据,可能是无序的,或者其排列顺序表示用户期望的使用ORDER BY对查询结果进行排序SELECT 字段名1,字段名2,……FROM 表名ORDER BY 字段名1 [ASC|DESC],字段名2[ASC|DESC]……参数说明指定的字段...
  • 可以通过org.hibernate.criterion.Order在Criteria对象中添加来完成,我们可以按升序或降序对结果进行排序。packageorg.nhooo.example.hibernate.criteria;importorg.hibernate.SessionFactory;importorg.hibe...
  • MySQL Order By 查询结果排序ORDER BYSQL 语法中 ORDER BY 关键字用于对查询结果进行排序排序分为升序(ASC)和降序(DESC)两种,当不使用 ORDER BY 指定排序方式时,默认为升序。语法:SELECT column,… FROM tb_...
  • MySQL查询结果排序

    2020-07-17 15:30:07
    一 什么是按照查询结果排序? 根据一个或多个字段,按照升序或者降序对查询结果进行排序。 二 案例 1. 案例一 2 案例二 3 案例三
  • 在SQL查询结果集中,记录的顺序是按它们在表中的顺序进行排列的,可以使用ORDER BY子句对查询结果按照给定的字段值重新进行排序排序支持升序和降序,升序按照从低到高或者从小到大,降序按照从高到低或者从大到小...
  • 在应用中经常要对查询结果排序输出,select语句中的order by子句可用于对查询结果按照一个或多个字段的值进行升序(asc)或降序(desc)排序,一般情况下升序可以省略asc,降序desc不能省略。 其语法为: order by &...
  • C#数据库记录进行排序查询,仅包括程序部分及源代码,数据库需要根据代码手动还原,可以按工资进行升序或降序排列,然后将结果显示在ListView中……

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 454
精华内容 181
关键字:

对查询结果进行升序排序