zoukankan      html  css  js  c++  java
  • 再看数据库——(5)Group By与Order By

    在使用sql语句时,很多人都会分不清order by与group by,其实简单的说:


    order by —— 排序

    group by ——分组


    1、order by是行的排序,默认为升序。

    有两种方式,ASC升序、降序DESC。

    其后面必须列出排序的字段名,当然可以是多个字段名。


    下面通过例子来看下它的简单用法:

    数据库中有一张Apartment表,其表中的字段值如下:



    要求:将表中数据按Number列降序排列

    /*Apartment为表名*/
    select * from Apartment order by Number desc


    排列之后的结果如下所示:



    扩展:

    在排序过程中,如果想要筛选重复项,这时就用到了Distinct关键字。

    要求:查出Number的不重复项,并按Number排序。

    select distinct Number from Apartment order by Number 

    显示结果如下:


    2、group by是分组,配合sum(),count()等聚合函数来使用


    要求:Number列的分组个数

    select count(Number) from Apartment group by Number

    查询结果如下:


    扩展:

    Having子句

    帮助我们对分组之后的结果进行筛选

    要求:接着上面的要求,求出分组中大于1的

    select count(Number) from Apartment group by Number having count(Number)>1


    查询结果如下:


    小结:

         通过上面的几个例子,就能发现,其实group by 和order by的作用并不相同,而且搭配的用法也不相同。不放过每一个细节,基础才能扎实。sql还有很大的学问去研究。

  • 相关阅读:
    从零开始入门 K8s | 应用编排与管理
    209. Minimum Size Subarray Sum
    208. Implement Trie (Prefix Tree)
    207. Course Schedule
    203. Remove Linked List Elements
    183. Customers Who Never Order
    182. Duplicate Emails
    181. Employees Earning More Than Their Managers
    1261. Find Elements in a Contaminated Binary Tree
    1260. Shift 2D Grid
  • 原文地址:https://www.cnblogs.com/saixing/p/6730300.html
Copyright © 2011-2022 走看看