【Sql Server】DateBase-连接查询
基本連接
Select? ?表.列????from 表 ?where ?同等連接
? ? ? ? ? ? ? ??2? ? ? ? ? ?1? ? ? ? ? ? ? ? ? ? ? ? ? 3???虛擬化名字
?
內(nèi)連接:多表符合條件的等值連接,消除不匹配的行,值顯示匹配的行
Select 列? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ---2:目標(biāo)列
From 表1 Inner join 表2 [on 等值連接條件]??????? ---1
Where 篩選條件
Order 查找
?
外連接:參與連接分主從表
【主表匹配從表,符合返回結(jié)果;不匹配,主表返回,從表為NULL,返回】
左外連接
Select 列
From 表1 left/right outerjoin 表2 on 【連接條件,執(zhí)行時(shí)篩選】
Where【篩選條件,執(zhí)行后篩選】
右外連接=左外連接主從關(guān)系的互換
?
全連接
Select 列
From 表1? ? ? ? ?full join? ? ?表2? ? ? ? ? ?On連接條件? ? ? ? ? 十多個(gè)
1? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??2
表1 符合?表2 符合? ? ? ? 表1 符合?不符合表2 ?????符合表2 不符合表1
?????? ?1? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?2? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 3
?
?
?
交叉連接——笛卡兒積
?
?
Select 目標(biāo)列
From表1 cross 表2? ? ? ? ? ? ? ? ? ? ? ? ?-------1部分
?
Where
Order 對(duì)查詢結(jié)果進(jìn)行的篩選 ????????--------2部分
?
1+2=基本連接
?
自然連接——查詢班級(jí)人數(shù)相等的班級(jí)名
Select 目標(biāo)列
From 表1 A ,表1 B
Where A,人數(shù)=B.人數(shù)
?
聯(lián)合查詢——多個(gè)查詢結(jié)合到一個(gè)結(jié)果集中
Select 目標(biāo)列 from表 where
Union 【all保留重復(fù)結(jié)果行】
Select 目標(biāo)列 from 表 where
目標(biāo)列的數(shù)目,內(nèi)容格式一致
?
使用子查詢:這樣的一個(gè)select查詢語(yǔ)句包含在where條件中
嵌套子查詢:在查詢中的where語(yǔ)句中在執(zhí)行一個(gè)子查詢
?
XML查詢:XML格式數(shù)據(jù),以字符串格式統(tǒng)一存儲(chǔ)
查詢具體節(jié)點(diǎn):declare @data xml
????????????? Set @data=select S_data from 表 where
????????????? Select @data.querry (‘表.列’) 列名
?
For xml 查詢
查詢結(jié)果——保存為——xml格式
{查詢語(yǔ)句}
For xml (raw ???|?? ?auto?|? Explicit? |? path)
???????? 并列 ???????默認(rèn)
?????????????????? 層次結(jié)構(gòu)
?
交查詢Intersect ——任課教師班級(jí)成績(jī) ??交 ?前10名= 所教學(xué)生中是否存在前十名
查詢
Intersect
查詢
?
Exists(返回值) true /false
1.????where語(yǔ)句
2.????判斷子查詢是否有結(jié)果 if exists
總結(jié)
以上是生活随笔為你收集整理的【Sql Server】DateBase-连接查询的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 【Sql Server】DateBase
- 下一篇: 【Sql Server】DateBase