SQL Server 2012 多表連接查詢功能實(shí)例代碼
廢話不多說了,直接給大家貼代碼了,具體代碼如下所示:
-- 交叉連接產(chǎn)生笛卡爾值 (X*Y)
SELECT *
FROM Student
cross Join dbo.ClassInfo
--另外一種寫法
SELECT *
FROM Student , ClassInfo
-- 內(nèi)連接 (Inner 可以省略)
SELECT *
FROM Student
JOIN dbo.ClassInfo ON dbo.Student.Class = dbo.ClassInfo.ID;
-- Inner Join
SELECT *
FROM Student
INNER JOIN dbo.ClassInfo ON dbo.Student.Class = dbo.ClassInfo.ID;
-- on 條件,通常是 主外鍵,但是不限于主外鍵
-- on 條件,允許有多個(gè),而且可能是針對(duì)某個(gè)表的
SELECT *
FROM Student
INNER JOIN dbo.ClassInfo ON dbo.Student.Class = dbo.ClassInfo.ID
AND dbo.Student.Class IN (1,2) -- 針對(duì)Student表增加查詢條件
-- 不等于 (笛卡爾值減去 相等的值)
SELECT *
FROM Student
INNER JOIN dbo.ClassInfo ON dbo.Student.Class <> dbo.ClassInfo.ID;
--自連接 從Class表中查詢到Class所在的系
SELECT T1.* ,T2.ClassName FROM dbo.ClassInfo AS T1
INNER JOIN dbo.ClassInfo AS T2 ON T1.PID=T2.ID
-- Left Join
SELECT *
FROM Student
Left JOIN dbo.ClassInfo ON dbo.Student.Class = dbo.ClassInfo.ID;
-- Right Join
SELECT *
FROM Student
RIGHT JOIN dbo.ClassInfo ON dbo.Student.Class = dbo.ClassInfo.ID;
-- 全外連接
SELECT *
FROM Student
FULL OUTER JOIN dbo.ClassInfo ON dbo.Student.Class = dbo.ClassInfo.ID;
-- 外連接和內(nèi)連接的區(qū)別是:
-- 內(nèi)連接,on條件不符合的話,會(huì)過濾掉數(shù)據(jù)
-- 外連接,以保留表為主,on條件成立顯示數(shù)據(jù),否則顯示NULL
--Union 縱向連接
SELECT StuID,StuName,StuEnName,StuAge,StuBirthday
FROM Student WHERE StuID<=2
UNION
SELECT StuID,StuName,StuEnName,StuAge,StuBirthday
FROM dbo.Student WHERE StuID>2
--Union 去重復(fù)
SELECT StuSex
FROM Student WHERE StuID<=2
UNION
SELECT StuSex
FROM dbo.Student WHERE StuID>2
--Union 顯示全部
SELECT StuSex
FROM Student WHERE StuID<=2
UNION ALL
SELECT StuSex
FROM dbo.Student WHERE StuID>2
--Except 差集,排除
SELECT StuID,StuName,StuEnName,StuAge,StuBirthday
FROM Student
Except
SELECT StuID,StuName,StuEnName,StuAge,StuBirthday
FROM dbo.Student WHERE StuID<=2
--Intersect 交集
SELECT StuID,StuName,StuEnName,StuAge,StuBirthday
FROM Student WHERE StuID>=2
Except
SELECT StuID,StuName,StuEnName,StuAge,StuBirthday
FROM dbo.Student WHERE StuID<=3
以上所述是小編給大家介紹的SQL Server 2012 多表連接查詢功能實(shí)例代碼,希望對(duì)大家有所幫助,如果大家有任何疑問歡迎給我留言,小編會(huì)及時(shí)回復(fù)大家的!
相關(guān)文章
自己收集比較強(qiáng)大的分頁存儲(chǔ)過程 推薦
這兩天幫朋友修改一個(gè)項(xiàng)目,看到一個(gè)存儲(chǔ)過程,感覺性能非常高。于是,整合自己以前搜集的比較好的存儲(chǔ)過程,拿來跟大家分享下2011-11-11
對(duì)SQL Server中敏感數(shù)據(jù)進(jìn)行加密解密的操作方法
近幾年有不少關(guān)于個(gè)人數(shù)據(jù)泄露的新聞(個(gè)人數(shù)據(jù)通常包含如姓名、地址、身份證號(hào)碼、財(cái)務(wù)信息等),給事發(fā)公司和被泄露人都帶來了不小的影響,所以本文給大家介紹了如何對(duì)SQL Server中的敏感數(shù)據(jù)進(jìn)行加密解密,需要的朋友可以參考下2024-05-05
SQL Server實(shí)現(xiàn)自動(dòng)循環(huán)歸檔分區(qū)數(shù)據(jù)腳本詳解
最近在工作中遇到了關(guān)于sql server的一個(gè)問題,通過查找相關(guān)的資料終于解決了,所以下面這篇文章主要給大家介紹了關(guān)于SQL Server如何實(shí)現(xiàn)自動(dòng)循環(huán)歸檔分區(qū)數(shù)據(jù)腳本的相關(guān)資料,需要的朋友可以參考借鑒,下面來一起看看吧。2017-09-09
SSMS中出現(xiàn)兩個(gè)相同的服務(wù)器名稱的問題解決
在SSMS的【連接到服務(wù)器】頁面,有時(shí)候可能會(huì)出現(xiàn)多個(gè)相同的服務(wù)器名稱本文主要介紹了SSMS中出現(xiàn)兩個(gè)相同的服務(wù)器名稱的問題解決,感興趣的可以了解一下2024-05-05
將ACCESS數(shù)據(jù)庫遷移到SQLSERVER數(shù)據(jù)庫兩種方法(圖文詳解)
這篇文章介紹了ACCESS數(shù)據(jù)庫遷移到SQLSERVER數(shù)據(jù)庫兩種方法,有需要的朋友可以參考一下2013-10-10
在SQL Server中使用ISNULL執(zhí)行空值判斷查詢
這篇文章主要介紹了在SQL Server中使用ISNULL執(zhí)行空值判斷查詢,ISNULL的好處是可以直接寫在SELECT查詢語句中,需要的朋友可以參考下2014-08-08

