国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > SQL Server > 正文

sql集合運算符使用方法

2024-08-31 01:01:50
字體:
來源:轉載
供稿:網友

(1)IN運算符:它可以用來匹配一個固定集合中的某一項。比如說一個集合里面的年份有(2001,2003,2005),那么就可以有:

復制代碼 代碼如下:


SELECT * FROM T_Book
WHERE FYearPublished IN(2001,2003,2005)

IN運算符,除了支持從固定的集合里面去匹配,當然也支持動態的集合方式去匹配。比如如下方式:

復制代碼 代碼如下:


SELECT * FROM T_Reader
WHERE FYearOfJoin IN
(
select FYearPublished FROM T_Book
)

(2)ANY和SOME集合運算符:在SQL SERVER里面,ANY和SOME是同義詞,二者的用法和功能一樣(一樣還搞兩個,不知道是不是蛋疼)。相比于IN運算符,ANY和SOME需要與其它的比較符(大于(>)、等于(=)、小于(<)、大于等于(>=)、小于等)共同使用,而且比較符需要在它們的前面。

復制代碼 代碼如下:


SELECT * FROM T_Reader
WHERE FYearOfJoin =ANY
(
select FYearPublished FROM T_Book
)

注意:和IN 運算符不同,ANY 和SOME運算符不能與固定的集合相匹配,比如下面的SQL 語句是錯誤的:

復制代碼 代碼如下:


SELECT * FROM T_Book
WHERE FYearPublished<ANY(2001,2003,2005)

(3)ALL集合運算符:在SQL SERVER里面,ALL運算符也需要與其它的比較符(大于(>)、等于(=)、小于(<)、大于等于(>=)、小于等)共同使用,而且比較符需要在它們的前面。

復制代碼 代碼如下:


SELECT * FROM T_Book
WHERE FYearPublished<ALL
(
SELECT FYearOfJoin FROM T_Reader
)


注意:

I、與ANY和SOME 運算符相同,ALL 運算符同樣不能與固定的集合相匹配,比如下面的SQL 語句是錯誤的:

復制代碼 代碼如下:


SELECT * FROM T_Book
WHERE FYearPublished<ALL(2001,2003,2005)

II、關于使用ALL運算符,還有一項需要注意,那就是這個ALL子查詢結果為空時,匹配的結果并不是以空的方式來處理,而是相當于全部匹配成功。所以在使用ALL運算符的時候,這一個問題很容易在系統中造成BUG,因此使用時必須注意。比如:

復制代碼 代碼如下:


SELECT * FROM T_Book
WHERE FYearPublished<ALL
(
SELECT FYearOfJoin FROM T_Reader
WHERE FProvince = 'JiangSu'
)

如果ALL子查詢的結果為空時,則將會取SELECT FYearOfJoin FROM T_Reader的全部結果來作為成功匹配的結果。

(4)EXISTS集合運算符:和IN、ANY、SOME、ALL等運算符不同,EXISTS運算符是單目運算符,它不與列匹配,因此它也不要求待匹配的集合是單列的。EXISTS運算符用來檢查每一行是否匹配子查詢,可以認為EXISTS就是用來測試子查詢的結果是否為空,如果結果集為空則匹配結果為false,否則匹配結果為true。

復制代碼 代碼如下:


SELECT * FROM T_Category
WHERE EXISTS
(
SELECT * FROM T_Book
WHERE T_Book. FCategoryId = T_Category.FId
AND T_Book. FYearPublished<1950
)


在EXISTS后的子查詢中,SQL對T_Category表中的每一行數據到子查詢中進行匹配,測試T_Book 表中是否存在FCategoryId 字段值等于當前類別主鍵值且出版年份在1950 年之前的書籍

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 嫩江县| 临潭县| 彰化市| 惠安县| 翁源县| 靖宇县| 清涧县| 海门市| 吉安市| 石城县| 襄汾县| 莫力| 瑞昌市| 池州市| 永福县| 麦盖提县| 色达县| 高邑县| 大安市| 县级市| 鄂尔多斯市| 永新县| 福安市| 福州市| 留坝县| 喜德县| 卓资县| 田东县| 临夏县| 沈阳市| 奉贤区| 葵青区| 额尔古纳市| 福建省| 运城市| 邢台县| 泰顺县| 新河县| 沙雅县| 沙湾县| 沙湾县|