排序查詢
使用格式
通過order by語句,可以將查詢出的結果進行排序。放置在select語句的最後。
SELECT * FROM 表名 ORDER BY 字段ASC;
ASC 升序 (默認)
DESC 降序
聚合函數
之前我們做的查詢都是橫向查詢,它們都是根據條件一行一行的進行判斷,而使用聚合函數查詢是縱向查詢,它是對一列的值進行計算,然後返回一個單一的值;另外聚合函數會忽略空值。
- count:統計指定列不爲NULL的記錄行數;
- sum:計算指定列的數值和,如果指定列;
- max:計算指定列的最大值,如果指定列是字符串類型,那麼使用字符串類型不是數值類型,那麼計算結果爲0排0序運算;
- min:計算指定列的最小值,如果指定列是字符串類型,那麼使用字符串排序運算;
- avg:計算指定列的平均值,如果指定列類型不是數值類型,那麼計算結果爲0;
分組查詢
使用格式
- 分組查詢是指使用group by字句對查詢信息進行分組,例如:我們要統計出zhanguw表中所有分類賬務的總數量,這時就需要使用group by 來對zhangwu表中的賬務信息根據parent進行分組操作。
- SELECT 字段1,字段2… FROM 表名 GROUP BY 字段 HAVING 條件;
- 分組操作中的having子語句,是用於在分組後對數據進行過濾的,作用類似於where條件。
having與where的區別
- having是在分組後對數據進行過濾.
- where是在分組前對數據進行過濾
- having後面可以使用分組函數(統計函數)
- where後面不可以使用分組函數。