1. 程式人生 > >MySQL資料庫之單表的DQL

MySQL資料庫之單表的DQL

一、SQL語句查詢

  1. 排序查詢:通過order by 語句,可以將查詢出來的結果進行排序 如:select * from 表名 order by 欄位名 ASC|DESC;ASC:是預設的升序,DESC:降序
    由於是排序,所以使用時一般是對數字欄位進行排序,而如果是字元或字串,則會按照字母的順序依次比較。
  2. 聚合函式查詢:
    2.1常見的聚合函式:
    ①count:統計指定的列不為null的記錄個數;②sum:對指定列進行求和,注意該列如果不是數值型別的則求和結果為0;③max計算指定列的最大值。如果是字串則按照字串的排序運算;④min:計算某一列的最小值; ⑤avg:計算指定列的平均值
    2.2 SQL語句舉例:select count(*) from product查詢商品的總條數。
    select count(*) from product where price>200;
    select sum(price) from product group by pname,查詢同名商品的價格總和。
  3. 分組查詢group by
    格式:select 欄位1,欄位2…from 表名 group by 分組欄位 having 分組條件;
    having的作用類似於where是用於條件過濾的。但是它們之間有區別:
    ① having是在分組後對資料進行過濾的,也就是說前面的分組結果已經出來了,然後通過having進行過濾;而where是在分組結果之前就過濾了;
    ② 由於①的原因,having後面可以使用分組函式(統計函式)但是where後面不能使用分組函式。

  4. 分頁查詢:
    MySQL 資料庫的分頁使用limit方言: select 欄位1,欄位2… from 表名 limit M,N
    M:整數表示從第幾條索引開始。
    N:整數表示查詢多少條資料。
    例如:select pname,price from product limit 0,5;從product 表中的索引0開始每次查詢5條資料。