美文网首页工作生活
MySQL 种 order by 与 limit

MySQL 种 order by 与 limit

作者: djz0306 | 来源:发表于2019-07-02 19:59 被阅读0次

    order by

    就像在购物网站买东西,可以按照价格排序一样,MySQL 也可以对结果集进行排序。这就是 order by。但是需要注意的是 order by 是对结果进行排序,所以用在 where/group by/having 后面

    1. 取出第四个栏目下的商品,并按照价格从高到低排序

      select goods_id,goods_name,cat_id,shop_price from goods where cat_id=4 order by shop_price desc; 
      

      只用加上 order by 列名,其中 desc 表示降序排列,默认为 asc 升序排列。

    2. 按照上架时间,升序排列:

      select goods_id,goods_name,shop_price from goods where cat_id=4 order by add_time;
      
    3. 取出所有商品,按照栏目排序可以是:

      select goods_id,goods_name,cat_id,shop_price from goods order by cat_id;
      

      但是如果栏目相同,那就需再选择一列排序,例如同栏目下按照价格从高到低排序

      select goods_id,goods_name,cat_id,shop_price from goods order by cat_id asc,shop_price desc;
      

      格式为:order by 列名1 desc/asc , 列名2 desc/asc ......

    limit

    就像购物网站会对商品分页一样,MySQL 也可以限制取出的条数:

    1. 取出第三个栏目下最便宜 十款商品:

      select goods_id,goods_name,cat_id,shop_price from goods where cat_id=3 order by shop_price asc limit 10;
      

      limit 的使用方法比较简单,limit [offset,] N。offset 为偏移量,指跳过几行,默认为0。N为取出的条数。

    2. 查询出本店价格从高到低,第 3 到 5名:

      select goods_id,goods_name,cat_id,shop_price from goods where cat_id=3 order by shop_price desc limit 2,3;
      

      3 就是实际取出的数目,2 为偏移量。

    MySQL 中 5 种子句的顺序为 where - group by - having - order by - limit

    相关文章

      网友评论

        本文标题:MySQL 种 order by 与 limit

        本文链接:https://www.haomeiwen.com/subject/ndathctx.html