校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > MySQL 查詢的排序、分頁相關

MySQL 查詢的排序、分頁相關

熱門標簽:廣東人工電話機器人 信陽穩定外呼系統運營商 石家莊電商外呼系統 日照旅游地圖標注 百度地圖圖標標注中心 南通自動外呼系統軟件 芒果電話機器人自動化 湖南人工外呼系統多少錢 申請外呼電話線路

概述

數據庫中的數據直接呈現出來一般不是我們想要的,所以我們上兩節演示了如何對數據進行過濾的方法。除了對數據進行過濾,

我們可能還需要對數據進行排序,比如想從列表中了解消費最高的項,就可能需要對金額字段做降序排序,想看年齡從小到大的分布情況,就可能需要對user表的age字段進行升序排序。

也可能需要對數據進行限制,比如我們需要對付款的1~10,11~20,21~30 名的用戶分別贈予不同的禮品,這時候對數據的限制就很有用了。

備注:下面腳本中[]包含的表示可選,| 分隔符表示可選其一。

數據排序 order by

語法格式如下:

1、需要排序的字段跟在order by之后;

2、asc 和 desc表示排序的規則,asc:升序,desc:降序,默認為升序 asc;

3、排序可以指定多次字段,多字段排序之間用逗號隔開。

4、多字段排序中,越靠前優先級越高,下面中cname1優先排序,當cname1等值的時候,cname2開始排序,直至所有字段都排序完。

select cname from tname order by cname1 [asc|desc],cname2 [asc|desc]...;

單個字段排序

舉個例子,在銷售額中通按照交易的訂單進行金額額度降序的方式顯示:

mysql> select * from t_order;
+---------+---------+---------+-------+
| orderid | account | amount | goods |
+---------+---------+---------+-------+
|    8 | brand  | 52.2  |   2 |
|    9 | hen   | 1752.02 |   7 |
|   10 | helyn  | 88.5  |   4 |
|   11 | sol   | 1007.9 |  11 |
|   12 | diny  | 12   |   1 |
|   13 | weng  | 52.2  |   5 |
|   14 | sally  | 99.71  |   9 |
+---------+---------+---------+-------+
7 rows in set

mysql> select * from t_order order by amount desc;
+---------+---------+---------+-------+
| orderid | account | amount | goods |
+---------+---------+---------+-------+
|    9 | hen   | 1752.02 |   7 |
|   11 | sol   | 1007.9 |  11 |
|   14 | sally  | 99.71  |   9 |
|   10 | helyn  | 88.5  |   4 |
|    8 | brand  | 52.2  |   2 |
|   13 | weng  | 52.2  |   5 |
|   12 | diny  | 12   |   1 |
+---------+---------+---------+-------+
7 rows in set

多個字段排序

多個字段排序用逗號隔開,優先級從左到右逐次遞減,如下圖,如果金額一致,則按照購買商品數量從多到少排序:

mysql> select * from t_order order by amount desc,goods desc;
+---------+---------+---------+-------+
| orderid | account | amount | goods |
+---------+---------+---------+-------+
|    9 | hen   | 1752.02 |   7 |
|   11 | sol   | 1007.9 |  11 |
|   14 | sally  | 99.71  |   9 |
|   10 | helyn  | 88.5  |   4 |
|   13 | weng  | 52.2  |   5 |
|    8 | brand  | 52.2  |   2 |
|   12 | diny  | 12   |   1 |
+---------+---------+---------+-------+
7 rows in set

按alias排序

按照別名排序或者做條件查詢的目的都是為了簡化代碼,方便使用,別名可以是英文,也可以是中文:

mysql> select account as ac,amount as am,goods as gd from t_order order by am,gd desc;

+-------+---------+----+
| ac  | am   | gd |
+-------+---------+----+
| diny | 12   | 1 |
| weng | 52.2  | 5 |
| brand | 52.2  | 2 |
| helyn | 88.5  | 4 |
| sally | 99.71  | 9 |
| sol  | 1007.9 | 11 |
| hen  | 1752.02 | 7 |
+-------+---------+----+
7 rows in set

字段排序中使用函數

下面使用了abs取絕對值函數,所以在 am字段降序排序中,-99.99 排在 99.71之上。

mysql> select * from t_order;
+---------+---------+---------+-------+
| orderid | account | amount | goods |
+---------+---------+---------+-------+
|    8 | brand  | 52.2  |   2 |
|    9 | hen   | 1752.02 |   7 |
|   10 | helyn  | 88.5  |   4 |
|   11 | sol   | 1007.9 |  11 |
|   12 | diny  | 12   |   1 |
|   13 | weng  | 52.2  |   5 |
|   14 | sally  | 99.71  |   9 |
|   15 | brand1 | -99.99 |   5 |
+---------+---------+---------+-------+
8 rows in set

mysql> select account as ac,amount as am,goods as gd from t_order order by abs(am) desc;

+--------+---------+----+
| ac   | am   | gd |
+--------+---------+----+
| hen  | 1752.02 | 7 |
| sol  | 1007.9 | 11 |
| brand1 | -99.99 | 5 |
| sally | 99.71  | 9 |
| helyn | 88.5  | 4 |
| brand | 52.2  | 2 |
| weng  | 52.2  | 5 |
| diny  | 12   | 1 |
+--------+---------+----+
8 rows in set

與Where條件結合使用

order 在 where 條件之后,根據where已經過濾好的數據再進行排序。下面是過濾出購買金額>80 且 購買數量>5的數據,并且按照價格降序排序。

mysql> select * from t_order;
+---------+---------+---------+-------+
| orderid | account | amount | goods |
+---------+---------+---------+-------+
|    8 | brand  | 52.2  |   2 |
|    9 | hen   | 1752.02 |   7 |
|   10 | helyn  | 88.5  |   4 |
|   11 | sol   | 1007.9 |  11 |
|   12 | diny  | 12   |   1 |
|   13 | weng  | 52.2  |   5 |
|   14 | sally  | 99.71  |   9 |
|   15 | brand1 | -99.99 |   5 |
+---------+---------+---------+-------+
8 rows in set

mysql> select * from t_order where amount>80 and goods>5 order by amount desc;
+---------+---------+---------+-------+
| orderid | account | amount | goods |
+---------+---------+---------+-------+
|    9 | hen   | 1752.02 |   7 |
|   11 | sol   | 1007.9 |  11 |
|   14 | sally  | 99.71  |   9 |
+---------+---------+---------+-------+

數據limit

很多時候我們過濾出符合要求的數據之后,還需要得到這些數據中的某一個具體區間,比如對付款超過1000的用戶的第1~10,11~20,21~30 名分別贈予不同的禮品,這時候就要使用limit操作了。

limit用來限制select查詢返回的數據,常用于數據排行或者分頁等情況。

語法格式如下:

select cname from tname limit [offset,] count;

1、offset表示偏移量,就是指跳過的行數,可以省略不寫,默認為0,表示跳過0行,如 limit 8 等同于 limit 0,8。

2、count:跳過偏移量offset之后開始取的數據行數,有count行。

3、limit中offset和count的值不能用表達式。

獲取前n條記錄

如下圖,limit n 和 limit 0,n 是一致的:

mysql> select * from t_order;
+---------+---------+---------+-------+
| orderid | account | amount | goods |
+---------+---------+---------+-------+
|    8 | brand  | 52.2  |   2 |
|    9 | hen   | 1752.02 |   7 |
|   10 | helyn  | 88.5  |   4 |
|   11 | sol   | 1007.9 |  11 |
|   12 | diny  | 12   |   1 |
|   13 | weng  | 52.2  |   5 |
|   14 | sally  | 99.71  |   9 |
|   15 | brand1 | -99.99 |   5 |
+---------+---------+---------+-------+
8 rows in set

mysql> select * from t_order limit 2
;
+---------+---------+---------+-------+
| orderid | account | amount | goods |
+---------+---------+---------+-------+
|    8 | brand  | 52.2  |   2 |
|    9 | hen   | 1752.02 |   7 |
+---------+---------+---------+-------+
2 rows in set

mysql> select * from t_order limit 0,2;
+---------+---------+---------+-------+
| orderid | account | amount | goods |
+---------+---------+---------+-------+
|    8 | brand  | 52.2  |   2 |
|    9 | hen   | 1752.02 |   7 |
+---------+---------+---------+-------+
2 rows in set

limit限制單條記錄

這邊我們獲取支付金額中最大和最小的的一條記錄。可以先使用 order 條件進行排序,然后limit 第1條記錄即可:

 mysql> select * from t_order;
 +---------+---------+---------+-------+
 | orderid | account | amount | goods |
 +---------+---------+---------+-------+
 |    8 | brand  | 52.2  |   2 |
 |    9 | hen   | 1752.02 |   7 |
 |   10 | helyn  | 88.5  |   4 |
 |   11 | sol   | 1007.9 |  11 |
 |   12 | diny  | 12   |   1 |
 |   13 | weng  | 52.2  |   5 |
 |   14 | sally  | 99.71  |   9 |
 |   15 | brand1 | -99.99 |   5 |
 +---------+---------+---------+-------+
 8 rows in set

 mysql> select * from t_order where amount>0 order by amount desc limit 1;
 +---------+---------+---------+-------+
 | orderid | account | amount | goods |
 +---------+---------+---------+-------+
 |    9 | hen   | 1752.02 |   7 |
 +---------+---------+---------+-------+
 1 row in set

 mysql> select * from t_order where amount>0 order by amount asc limit 1;
 +---------+---------+--------+-------+
 | orderid | account | amount | goods |
 +---------+---------+--------+-------+
 |   12 | diny  | 12   |   1 |
 +---------+---------+--------+-------+
 1 row in set

以上就是MySQL 查詢的排序、分頁相關的詳細內容,更多關于MySQL 查詢的資料請關注腳本之家其它相關文章!

您可能感興趣的文章:
  • MySQL排序原理和案例詳析
  • MySQL利用索引優化ORDER BY排序語句的方法
  • Mysql排序和分頁(order by&limit)及存在的坑
  • MySQL如何使用union all獲得并集排序
  • Mysql8.0使用窗口函數解決排序問題
  • MySQL單表查詢操作實例詳解【語法、約束、分組、聚合、過濾、排序等】
  • 基于mysql 默認排序規則的坑

標簽:惠州 沈陽 牡丹江 呼和浩特 合肥 公主嶺 天津 阿里

巨人網絡通訊聲明:本文標題《MySQL 查詢的排序、分頁相關》,本文關鍵詞  MySQL,查詢,的,排序,分頁,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《MySQL 查詢的排序、分頁相關》相關的同類信息!
  • 本頁收集關于MySQL 查詢的排序、分頁相關的相關信息資訊供網民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    午夜一区二区三区视频| 欧美r级电影在线观看| 91精品视频网| 日韩综合小视频| 日韩丝袜情趣美女图片| 国内外精品视频| 国产欧美日韩激情| 99视频国产精品| 天天影视涩香欲综合网 | 制服丝袜中文字幕亚洲| 久久99久久99| 亚洲韩国一区二区三区| 久久亚洲一区二区三区四区| 色悠悠亚洲一区二区| 玖玖九九国产精品| 亚洲激情自拍偷拍| 亚洲精品一区二区三区蜜桃下载 | 国产福利精品导航| 亚洲午夜私人影院| 中文在线免费一区三区高中清不卡| 色综合久久中文字幕| 国精产品一区一区三区mba视频| 夜夜操天天操亚洲| 中文字幕va一区二区三区| 欧美日韩国产片| proumb性欧美在线观看| 九一九一国产精品| 亚洲成人自拍网| 亚洲欧洲在线观看av| 26uuu另类欧美亚洲曰本| 欧美精品tushy高清| 91福利国产精品| 97aⅴ精品视频一二三区| 国产一区二区三区高清播放| 午夜免费久久看| 亚洲专区一二三| 亚洲欧美自拍偷拍色图| 久久久久久久电影| 久久久亚洲高清| 欧美刺激午夜性久久久久久久| 午夜精品福利视频网站| 亚洲欧洲综合另类| 综合精品久久久| 日韩一区日韩二区| 亚洲日本韩国一区| 一区二区免费在线播放| 亚洲色大成网站www久久九九| 国产日韩亚洲欧美综合| 欧美国产在线观看| 国产欧美日韩卡一| 亚洲欧洲av在线| 亚洲另类中文字| 一区二区国产视频| 亚洲va国产天堂va久久en| 亚洲电影在线播放| 首页国产欧美日韩丝袜| 美国十次综合导航| 国产精品香蕉一区二区三区| 丁香五精品蜜臀久久久久99网站| 成人av网站免费| 97成人超碰视| 欧美福利电影网| 精品av久久707| 国产日韩精品一区二区浪潮av | 三级不卡在线观看| 秋霞国产午夜精品免费视频| 精品一区二区三区视频在线观看| 久久精品国产99久久6| 经典一区二区三区| 91伊人久久大香线蕉| 色婷婷av一区二区三区大白胸 | 国产成人免费视频网站| 波多野结衣在线一区| 色婷婷久久久亚洲一区二区三区| 欧美色区777第一页| 日韩欧美电影一区| 亚洲天堂2014| 日本美女一区二区三区| 国产一区不卡视频| 欧美性感一类影片在线播放| 欧美哺乳videos| 日韩毛片在线免费观看| 日韩高清不卡一区二区三区| 国产成人av自拍| 欧美人妖巨大在线| 欧美激情一区二区| 日韩精品福利网| 91在线你懂得| 精品欧美黑人一区二区三区| 中文字幕一区不卡| 久久国产人妖系列| 在线日韩av片| 国产偷国产偷精品高清尤物| 亚洲国产日韩a在线播放| 国产自产2019最新不卡| 欧美视频在线播放| 欧美国产丝袜视频| 捆绑调教美女网站视频一区| 99久久久国产精品| 国产亚洲欧美激情| 日韩电影免费在线看| 91免费观看视频| 久久婷婷一区二区三区| 亚洲成va人在线观看| 99久久精品国产一区二区三区| 欧美一区二区视频在线观看2022| ...av二区三区久久精品| 精品一区二区三区久久| 欧美在线免费播放| 亚洲色大成网站www久久九九| 国产传媒一区在线| 欧美xxx久久| 日本vs亚洲vs韩国一区三区| 99精品在线观看视频| 国产日韩欧美麻豆| 狠狠色丁香婷婷综合久久片| 欧美日韩在线观看一区二区| 亚洲精品美国一| 色综合久久九月婷婷色综合| 久久精品男人的天堂| 国产精品1区2区3区| 精品理论电影在线观看| 久久99国内精品| 久久久久久久性| 久久精品国产亚洲aⅴ| 欧美一区二区性放荡片| 蜜桃视频第一区免费观看| 91精品国产综合久久久久久| 日韩精品久久理论片| 日韩欧美中文字幕公布| 久久激情综合网| 久久精品人人做人人综合 | 国产亚洲欧洲一区高清在线观看| 精品一区二区三区蜜桃| 久久精品一区二区三区不卡| 福利一区福利二区| 亚洲欧洲性图库| 在线中文字幕一区| 亚洲综合在线电影| 色综合一个色综合| 亚洲一区免费在线观看| 精品视频一区 二区 三区| 日韩成人精品在线观看| 精品日产卡一卡二卡麻豆| 国产麻豆一精品一av一免费 | 国产人成一区二区三区影院| 国产福利一区二区三区视频| 国产目拍亚洲精品99久久精品| 成人久久久精品乱码一区二区三区 | 日韩精品最新网址| 国产露脸91国语对白| 136国产福利精品导航| 777亚洲妇女| 国产成人av电影在线播放| 亚洲综合久久久久| 精品国产伦一区二区三区观看方式| 国产美女精品一区二区三区| 国产精品国产三级国产普通话三级 | 亚洲欧美日韩综合aⅴ视频| 在线视频亚洲一区| 狠狠色狠狠色综合| 一区二区高清在线| 久久久一区二区| 欧美精品久久久久久久多人混战| 成人午夜伦理影院| 日韩精彩视频在线观看| 国产精品水嫩水嫩| 91精品国产综合久久国产大片| 国产福利一区二区三区| 石原莉奈一区二区三区在线观看| 久久久高清一区二区三区| 欧美日韩中文一区| 97久久超碰国产精品| 精品在线亚洲视频| 亚洲成av人片在线观看无码| 国产精品午夜在线观看| 欧美丰满少妇xxxbbb| 色婷婷亚洲一区二区三区| 国产精品一线二线三线精华| 男女视频一区二区| 亚洲国产精品久久久久秋霞影院| 久久久久久久久久久久久夜| 欧美精品一二三| 欧美亚洲一区二区三区四区| 成人国产免费视频| 国产成人在线视频播放| 免费不卡在线观看| 丝袜亚洲另类欧美| 亚洲午夜精品久久久久久久久| 国产精品福利电影一区二区三区四区| 日韩一区二区三区电影| 欧美日韩午夜影院| 在线精品亚洲一区二区不卡| 成人av在线影院| 国产超碰在线一区| 成人一区二区三区视频在线观看| 美腿丝袜亚洲色图| 久久国内精品自在自线400部| 免费观看一级欧美片| 日韩国产在线观看一区|