qq自動(dòng)發(fā)貨平臺(tái)網(wǎng)站怎么做嘉定區(qū)整站seo十大排名
SQL Sever 基礎(chǔ)知識(shí) - 四、數(shù)據(jù)篩選
- 四、篩選數(shù)據(jù)
- 第1節(jié) DISTINCT - 去除重復(fù)值
- 1.1 SELECT DISTINCT 子句簡(jiǎn)介
- 1.2 SELECT DISTINCT 示例
- 1.2.1 DISTINCT 一列示例
- 1.2.2 DISTINCT 多列示例
- 1.2.3 DISTINCT 具有 null 值示例
- 1.2.4 DISTINCT 與 GROUP BY 對(duì)比
- 第2節(jié) WHERE - 過濾查詢返回的行
- 2.1 WHERE 子句簡(jiǎn)介
- 2.2 WHERE 子句示例
- 2.2.1 使用簡(jiǎn)單等式查找行
- 2.2.2 查找滿足兩個(gè)條件的行
- 2.2.3 使用比較運(yùn)算符查找行
- 2.2.4 查找滿足兩個(gè)條件之一的行
- 2.2.4 查找值在兩個(gè)值之間的行
- 2.2.4.1 使用between...and...關(guān)鍵字
- 2.2.4.2 使用判斷符
- 2.2.5 在值列表中查找具有值的行
- 2.2.6 查找值包含字符串的行 - 模糊查詢
更多SQL Sever基礎(chǔ)知識(shí)可查看:SQL Sever 基礎(chǔ)知識(shí)(全)
特別說明:
??本文章所用的所有數(shù)據(jù)庫、數(shù)據(jù)表及其數(shù)據(jù)皆為AI隨機(jī)生成,不涉及個(gè)人隱私,且僅供學(xué)習(xí)使用!
四、篩選數(shù)據(jù)
第1節(jié) DISTINCT - 去除重復(fù)值
SELECT DISTINCT
子句來檢索指定列列表中的唯一非重復(fù)值。
1.1 SELECT DISTINCT 子句簡(jiǎn)介
SELECT DISTINCT 子句語法:
SELECT DISTINCT <列名>
FROM <表名>
Note:
① 查詢僅返回指定列中的非重復(fù)值,即從結(jié)果集中刪除列中的重復(fù)值。
② 查詢使用 SELECT 列表中所有指定列的值的組合來評(píng)估唯一性。
③ 將 DISTINCT 子句應(yīng)用于具有NULL的列,則 DISTINCT 子句將僅保留一個(gè)NULL并消除另一個(gè), DISTINCT 子句將所有NULL“值”視為相同的值。
1.2 SELECT DISTINCT 示例
1.2.1 DISTINCT 一列示例
查詢CustomerInfo表中客戶所在省份:
select distinct Provincefrom CustomerInfoorder by Province
執(zhí)行結(jié)果:
1.2.2 DISTINCT 多列示例
查詢CustomerInfo表中客戶所在省份和城市:
select distinct Province,Cityfrom CustomerInfoorder by Province
執(zhí)行結(jié)果:
1.2.3 DISTINCT 具有 null 值示例
1.2.4 DISTINCT 與 GROUP BY 對(duì)比
查詢CustomerInfo表中客戶所在省份和城市(分組查詢):
select Province,Cityfrom CustomerInfogroup by Province,Cityorder by Province,City
執(zhí)行結(jié)果:
與前面使用DISTINCT
對(duì)比結(jié)果相同,相當(dāng)于以下使用 DISTINCT
運(yùn)算符的查詢。
DISTINCT
和 GROUP BY
子句都通過刪除重復(fù)項(xiàng)來減少結(jié)果集中返回的行數(shù)。但是,如果要對(duì)一個(gè)或多個(gè)列應(yīng)用聚合函數(shù),則應(yīng)使用 GROUP BY
子句。
第2節(jié) WHERE - 過濾查詢返回的行
根據(jù)一個(gè)或多個(gè)條件篩選查詢輸出中的行。
2.1 WHERE 子句簡(jiǎn)介
使用 SELECT 語句查詢一個(gè)表的數(shù)據(jù)時(shí),會(huì)獲得該表的所有行,這不一定必要,有時(shí)候可能只處理一組。要從表中獲取滿足一個(gè)或多個(gè)條件的行組,可使用where
子句,語法如下所示:
select <列名1>,<列名2>,...from [表]where <條件>
以上語法:
① 在 WHERE 子句中,指定搜索條件以篩選由 FROM 子句返回的行。 WHERE 子句僅返回導(dǎo)致搜索條件計(jì)算為 TRUE
的行。
② 搜索條件是邏輯表達(dá)式或多個(gè)邏輯表達(dá)式的組合。在SQL中,邏輯表達(dá)式通常稱為謂詞。
③ 請(qǐng)注意,SQL Server使用三值謂詞邏輯,其中邏輯表達(dá)式的計(jì)算結(jié)果可以是 TRUE
、 FALSE
或 UNKNOWN
。 WHERE 子句不會(huì)返回任何導(dǎo)致謂詞計(jì)算為 FALSE
或 UNKNOWN
的行。
2.2 WHERE 子句示例
2.2.1 使用簡(jiǎn)單等式查找行
查詢CustomerInfo表中已簽收的所有顧客信息:
select *from CustomerInfowhere Status = '已簽收'
執(zhí)行結(jié)果:
2.2.2 查找滿足兩個(gè)條件的行
查詢CustomerInfo表中廣東省已簽收的所有顧客信息:
select *from CustomerInfowhere Status = '已簽收' and Province = '廣東省'
執(zhí)行結(jié)果:
2.2.3 使用比較運(yùn)算符查找行
查詢CustomerInfo表中已簽收且年齡大于30歲的所有顧客信息:
select *from CustomerInfowhere Status = '已簽收' and Age > 30
執(zhí)行結(jié)果:
2.2.4 查找滿足兩個(gè)條件之一的行
查詢CustomerInfo表中是湖北或者北京地區(qū)的所有顧客信息:
select *from CustomerInfowhere Province = '湖北省' or Province = '北京市'
執(zhí)行結(jié)果:
OR
關(guān)鍵字:滿足條件之一的任何數(shù)據(jù)都包含在結(jié)果集中
2.2.4 查找值在兩個(gè)值之間的行
2.2.4.1 使用between…and…關(guān)鍵字
查詢年齡在30到35歲之間女性用戶信息:
select *from CustomerInfowhere Age between 30 and 35 and Gender = 'Female'
執(zhí)行結(jié)果:
2.2.4.2 使用判斷符
查詢年齡在30到35歲之間女性用戶信息:
select *from CustomerInfowhere Age >= 30 and Age <= 35 and Gender = 'Female'
執(zhí)行結(jié)果:
2.2.5 在值列表中查找具有值的行
查詢?cè)诤?、湖南和北京地區(qū)的客戶信息“
select *from CustomerInfowhere Province in ('湖北省','湖南省','北京市')
執(zhí)行結(jié)果:
2.2.6 查找值包含字符串的行 - 模糊查詢
查找‘劉’姓客戶的所有信息:
select *from CustomerInfowhere CusName like'劉%'
執(zhí)行結(jié)果: