文章目錄
- 一、SQL語言DQL知悉
- (一)概念理解
- (二)查詢語法
- 二、查詢分類
- (一)基礎查詢
- (二)條件查詢
- (三)排序查詢
- (四)分組查詢
- where 和 having 的區別?
- (五)分頁查詢
一、SQL語言DQL知悉
(一)概念理解
DQL:查詢表中的記錄 : select * from 表名;
資料查詢語言DQL基本結構是由SELECT子句,FROM子句,WHERE 子句組成的查詢塊:
SELECT ----------- <欄位名表>
FROM---------------<表或視圖名>
WHERE------------ <查詢條件>
(二)查詢語法
select 欄位串列
from 表名串列
where 條件串列
group by 分組欄位
having 分組之后的條件
order by 排序
limit 分頁限定
二、查詢分類
(一)基礎查詢
- 多個欄位的查詢(欄位:年齡,姓名)
select 欄位名1,欄位名2… from 表名;
* 注意:
* 如果查詢所有欄位,則可以使用*來替代欄位串列,
select age name from stu;
select * from stu;
- 去除重復: * distinct
select distinct age name from stu;
- 計算列 * ifnull(運算式1,運算式2):null參與的運算,計算結果都為null
計算數學和英語課程的總分,(當有一門為null值時,防止結果為null)
select name,math + ifnull(english ,0) from stu;
- 起別名: * as:as也可以省略 ,在l兩門成績前面加上 As 總分
select name,math + ifnull(english ,0) (As) 總分 from stu;
(二)條件查詢
1 查詢 ID 不等于20的資訊 ---- 識別符號: <>
SELECT * FROM stu WHERE count <> 20;`
2 查詢 ID 大于等于20 小于等于30的資訊
---- 1 AND連接;
---- 2 用 BETWEEN 和 AND 隔開
SELECT * FROM stu WHERE count >= 20 AND age <=30;
SELECT * FROM stu WHERE count BETWEEN 20 AND 30;
3 查詢 ID 為22,18,25 的資訊 ---- 識別符號:IN
SELECT * FROM stu WHERE count IN (22,18,25);
4 查詢英語成績為是否為 null 值
– 查詢英語成績不為null
SELECT * FROM stu WHERE english IS NULL;
SELECT * FROM stu WHERE english IS NOT NULL;
5 例:查詢姓 王 的人的資訊 ------------------LIKE ‘王%’
—例:查詢名字中帶有 澤 子人的資訊 ---- LIKE ‘%澤%’
SELECT * FROM stu WHERE NAME LIKE '王%';
SELECT * FROM stu WHERE NAME LIKE '%澤%';
(三)排序查詢
語法:order by 子句
* order by 排序欄位1 排序方式1 , 排序欄位2 排序方式2…
* ASC: 升序,也是默認的,
* DESC: 降序,
select * from stu order by math ASC;
select * from stu order by math DESC;
(四)分組查詢
where 和 having 的區別?
- where 在分組之前進行限定,如果不滿足條件,則不參與分組,having在分組之后進行限 定,如果不滿足結果,則不會被查詢出來
- where 后不可以跟聚合函式,having可以進行聚合函式的判斷,
SELECT sex , AVG(math) FROM stu GROUP BY sex;
/*按照性別分組,分別查詢男、女同學的平均分*/
SELECT sex , AVG(math),COUNT(id) FROM stu WHERE math > 70 GROUP BY sex;
/* 按照性別分組,分別查詢男、女同學的平均分,人數 要求:分數低于70分的人,不參與分組*/
(五)分頁查詢
- 語法:limit 開始的索引,每頁查詢的條數;
- 公式:開始的索引 = (當前的頁碼 - 1)* 每頁顯示的條數
(1) – 每頁顯示5條記錄
SELECT * FROM student LIMIT 0,5; -- 第1頁
SELECT * FROM student LIMIT 5,5; -- 第2頁
SELECT * FROM student LIMIT 10,5; -- 第3頁
**@喜歡的點贊關注,評論區留下寶貴的意見吶??~**
- 不足之處,歡迎雅正留言
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/259301.html
標籤:其他
下一篇:使用C#開發資料庫應用系統
