高級查詢


高級查詢

  1. 聚合函數

(一)COUNT()函數:用來統計記錄的條數

語法格式如下所示:

SELECT COUNT(*) FROM 表名;

例如:(1)查詢student表中一共有多少條記錄,SQL語句及其執行結果如下所示:

 

 

 

(二)   SUM()函數:用於求出表中某個字段所有值的總和

  語法格式如下所示:

SELECT SUM(字段名) FROM 表名;

例如:(1)求出student表中grade字段的總和,SQL語句及其執行結果如下所示:

 

 

 

(三)   AVG()函數:用於求出某個字段所有值的平均值

 語法格式如下所示:

SELECT AVG(字段名) FROM student;

例如:(1)求出student表中grade字段的平均值,SQL語句及其執行結果如下所示:

 

 

 

(四)MAX()函數:用於求出某個字段的最大值

語法格式如下所示:

SELECT MAX(grade) FROM student;

例如:(1)求出student表中所有學生grade字段的最大值,SQL語句及其執行結果如下所示:

 

 

 

(五)MIN()函數:用於求出某個字段的最小值

語法格式如下所示:

SELECT MIN(grade) FROM student;

例如:(1)求出student表中grade字段的最小值,SQL語句如下所示:

 

 

 

2. 對查詢結果排序

(一)   使用ORDER BY對查詢結果進行排序。

語法格式如下所示:

SELECT 字段名1,字段名2,……

FROM 表名

ORDER BY 字段名1 [ASC | DESC],字段名2 [ASC | DESC]……

例如:(1)查出student表中的所有記錄,並按照grade字段進行排序,SQL語句及其執行結果如下所示:

 

 

 

(2)查詢student表中的所有記錄,按照gender字段的升序和grade字段的降序進行排列,SQL語句及其執行結果如下所示:

 

 

 

3. 分組查詢

使用GROUP BY按某個字段或者多個字段中的值進行分組,字段中值相同的為一組。

語法格式如下所示:

SELECT 字段名1,字段名2,……

FROM 表名

GROUP BY 字段名1 ,字段名2 ……

(一) 單獨使用GROUP BY 分組:單獨使用group by關鍵字,查詢的是每個分組中的一條記錄。

例如:(1)查詢student表中的記錄,按照gender字段值進行分組,SQL語句及其執行結果如下所示:

 

 

 

(二)GROUP BY和聚合函數一起使用:可以統計出某個或者某些字段在一個分組中的最大值、最小值、平均值等等。

例如(1)將student表按照gender字段值進行分組查詢,計算出每個分組中各有多少名學生,SQL語句及其執行結果如下所示:

 

 

 

(二)   GROUP BY和HAVING關鍵字一起使用: 用於設置條件表達式對查詢結果進行過濾。

 例如(1)將student表按照gender字段進行分組查詢,查詢出grade字段值之和小於300的分組,SQL語句及其執行結果如下所示:

   

 

 

4.使用LIMIT限制查詢結果的數量

LIMIT,可以指定查詢結果從哪一條記錄開始以及一共查詢多少條信息。

語法格式如下所示:

SELECT 字段名1,字段名2,……

FROM 表名

LIMIT [OFFSET,] 記錄數

例如(1)查詢student表中的前4條記錄,SQL語句及其執行結果如下所示:

 

 

 

5.函數(列表)

 

 

 

 

 

 

 

例如(1)查詢student表中的id和gender字段值,如果gender字段的值為“男”則返回1,如果不為“男”則返回0, SQL語句及其執行結果如下所示:

 

 

 

6.為表取別名

為表起別名的格式如下所示:

SELECT * FROM 表名 [AS] 別名;

7.為字段取別名

為字段起別名的格式如下所示:

SELECT 字段名 [AS] 別名[,字段名 [AS] 別名,……] FROM 表名;

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM