亚洲最大看欧美片,亚洲图揄拍自拍另类图片,欧美精品v国产精品v呦,日本在线精品视频免费

  • 站長資訊網(wǎng)
    最全最豐富的資訊網(wǎng)站

    mysql怎么實現(xiàn)查詢并排序

    在mysql中,可以利用SELECT語句和“ORDER BY”關(guān)鍵字來實現(xiàn)查詢排序功能,語法“SELECT * FROM 數(shù)據(jù)表名 ORDER BY 字段名 [ASC|DESC]”;如果設(shè)置“ASC”則可升序排序,“DESC”則可降序排序。

    mysql怎么實現(xiàn)查詢并排序

    本教程操作環(huán)境:windows7系統(tǒng)、mysql8版本、Dell G3電腦。

    在mysql中,可以利用SELECT語句和“ORDER BY”關(guān)鍵字實現(xiàn)查詢排序效果。

    SELECT 語句可以查詢數(shù)據(jù),而ORDER BY關(guān)鍵字可以將查詢結(jié)果中的數(shù)據(jù)按照一定的順序進(jìn)行排序

    語法:

    SELECT * FROM 數(shù)據(jù)表名 ORDER BY 字段名 [ASC|DESC]

    語法說明如下。

    • 字段名:表示需要排序的字段名稱,多個字段時用逗號隔開。

    • ASC|DESCASC表示字段按升序排序;DESC表示字段按降序排序。其中ASC為默認(rèn)值。

    使用 ORDER BY 關(guān)鍵字應(yīng)該注意以下幾個方面:

    • ORDER BY 關(guān)鍵字后可以跟子查詢。

    • 當(dāng)排序的字段中存在空值時,ORDER BY 會將該空值作為最小值來對待。

    • ORDER BY 指定多個字段進(jìn)行排序時,MySQL 會按照字段的順序從左到右依次進(jìn)行排序。

    單字段排序

    下面通過一個具體的實例來說明當(dāng) ORDER BY 指定單個字段時,MySQL 如何對查詢結(jié)果進(jìn)行排序。

    例 1

    下面查詢 tb_students_info 表的所有記錄,并對 height 字段進(jìn)行排序,SQL 語句和運行結(jié)果如下。

    mysql> SELECT * FROM tb_students_info ORDER BY height; +----+--------+---------+------+------+--------+------------+ | 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)

    由結(jié)果可以看到,MySQL 對查詢的 height 字段的數(shù)據(jù)按數(shù)值的大小進(jìn)行了升序排序。

    多字段排序

    下面通過一個具體的實例來說明當(dāng) ORDER BY 指定多個字段時,MySQL 如何對查詢結(jié)果進(jìn)行排序。

    例 2

    查詢 tb_students_info 表中的 name 和 height 字段,先按 height 排序,再按 name 排序,SQL 語句和運行結(jié)果如下。

    mysql> SELECT name,height FROM tb_students_info ORDER BY height,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)

    注意:在對多個字段進(jìn)行排序時,排序的第一個字段必須有相同的值,才會對第二個字段進(jìn)行排序。如果第一個字段數(shù)據(jù)中所有的值都是唯一的,MySQL 將不再對第二個字段進(jìn)行排序。

    默認(rèn)情況下,查詢數(shù)據(jù)按字母升序進(jìn)行排序(A~Z),但數(shù)據(jù)的排序并不僅限于此,還可以使用 ORDER BY 中的 DESC 對查詢結(jié)果進(jìn)行降序排序(Z~A)。

    例 3

    查詢 tb_students_info 表,先按 height 降序排序,再按 name 升序排序,SQL 語句和運行結(jié)果如下。

    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 關(guān)鍵字只對前面的列進(jìn)行降序排列,在這里只對 height 字段進(jìn)行降序。因此,height 按降序排序,而 name 仍按升序排序。如果想在多個列上進(jìn)行降序排序,必須對每個列指定 DESC 關(guān)鍵字。

    贊(0)
    分享到: 更多 (0)
    網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號