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

首頁 > 課堂 > 基礎知識 > 正文

使用T-SQL實現多表查詢

2024-09-12 20:30:05
字體:
來源:轉載
供稿:網友
  表連接的類型:
  1.內連接(inner join):是最常用的一種連接方式,只返回兩個數據集合之間匹配關系的行,將位于兩個互相交叉的數據集合中重疊部分以內的數據行連接起來。
   例子:在表A和表B中使用內連接查詢學生姓名,學校和職業。
  實現方式一:
    select A.姓名,A.學校,B.職業 from A,B where A.姓名=B.姓名
   含義:結果顯示表A的姓名和學校,表B的職業,從A,B表中查詢,查詢條件是表A的姓名等于表B的姓名。
  實現方式二:
    select A.姓名,A.學校,B.職業 from A inner join B on A.姓名=B.姓名
   含義:表A內連接表B,內連接條件是表A的姓名等于表B的姓名。
   注:內連接的結果只顯示表A和表B共同擁有的姓名的行,姓名不相同的舍棄。
  2.外連接:是對內連接的擴充,顯示不匹配的數據。
   1).左外連接(left join 或 left outer join):結果保留左表的所有行,如果左表的某一行在右表中沒有匹配行,則將為右表的返回空值,否則返回相應值。
    例子:在表A和表B中使用左外連接查詢學生姓名,學校和職業。
   select A.姓名,A.學校,B.姓名,B.職業 from A left join B on A.姓名=B.姓名
   含義:結果顯示出左邊A表的所有姓名行數,B表中沒有匹配的姓名,姓名和職業就顯示為空值(null)。
    2).右外連接(right join 或right outer join):與左外連接相反,結果返回右表的所有行,如果右表的某一行在左表中沒有匹配行,則將為左表的返回空值,否則返回相應值。
    例子:在表A和表B中使用右外連接查詢學生姓名,學校和職業。
   select A.姓名,A.學校,B.姓名,B.職業 from A right join B on A.姓名=B.姓名
   含義:結果顯示出右邊B表的所有姓名行數,A表中沒有匹配的姓名,姓名和學校就顯示為空值(null)。
  3).全連接/完整外連接(full join 或 full outer join):結果返回左表和右表的所有行,當某一行在另一個表中沒有匹配行時,另一個表返回值就為空值,否則返回相應值。
   例子:在表A和表B中使用右外連接查詢學生姓名,學校和職業。
    select A.姓名,A.學校,B.姓名,B.職業 from A full join B on A.姓名=B.姓名
    含義:結果顯示出A和B表的所有姓名行數,A表中沒有匹配B表中的姓名,A的姓名和學校就顯示為空值(null)。B表中沒有匹配A表中的姓名,B的姓名和職業就顯示為空值(null)。
  3.交叉連接(cross join):是表之間沒有任何關聯條件,查詢的結果是返回左表的每一行與右表的每一行挨個連接組合,相當于相乘。應用的場合較少,作為了解。
   例子:在表A和表B中使用交叉連接查詢學生姓名,學校和職業。
   select A.姓名,A.學校,B.姓名,B.職業 from A full join B
    含義:A表中的每一行都和B表中的每一行組合成為新行,結果總行數等于A的行數乘以B的行數。

(編輯:武林網)

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 长子县| 东乡族自治县| 江阴市| 丰城市| 周口市| 玛纳斯县| 武清区| 社会| 阜城县| 大城县| 长寿区| 海安县| 综艺| 平和县| 澳门| 尉犁县| 六盘水市| 广昌县| 水富县| 牡丹江市| 上饶市| 新巴尔虎左旗| 五指山市| 丘北县| 海晏县| 九江市| 临颍县| 奈曼旗| 桐梓县| 曲靖市| 广昌县| 鲁甸县| 成安县| 丰顺县| 金溪县| 德安县| 股票| 绵阳市| 长汀县| 新疆| 台南县|