四:聯接查詢
1.聯接
1.1內聯接(inner join)
1.2外聯接(outer join)
1.2.1左聯接(left join)
1.2.2右聯接(right join)
1.3交叉聯接(cross join)
2.內聯接與自聯接
內聯接:作用於兩個表,一般通過兩個表中相同的字段的關係(=/<>)建立聯絡
自聯接:作用於自身表的兩個例項
3.外聯接
1.左聯接
left join 關鍵字會從左表 (table_name1) 那裡返回所有的行,即使在右表 (table_name2) 中沒有匹配的行。
select column_name(s)from table_name1left join table_name2 on table_name1.column_name=table_name2.column_name注釋:在某些資料庫中, left join 稱為 left outer join。
"persons" 表:
id_p
lastname
firstname
address
city
1adams
john
oxford street
london
2bush
george
fifth **enue
new york
3carter
thomas
changan street
beijing
"orders" 表:
id_o
orderno
id_p
17789532
4467833
2245614
2456215
34764
65現在,我們希望列出所有的人,以及他們的定購 - 如果有的話。
您可以使用下面的 select 語句:
select persons.lastname, persons.firstname, orders.ordernofrom personsleft join orderson persons.id_p=orders.id_porder by persons.lastname結果集:
lastname
firstname
orderno
adams
john
22456
adams
john
24562
carter
thomas
77895
carter
thomas
44678
bush
george
left join 關鍵字會從左表 (persons) 那裡返回所有的行,即使在右表 (orders) 中沒有匹配的
2.右聯接
right join 關鍵字會右表 (table_name2) 那裡返回所有的行,即使在左表 (table_name1) 中沒有匹配的行。
select column_name(s)from table_name1right join table_name2 on table_name1.column_name=table_name2.column_name注釋:在某些資料庫中, right join 稱為 right outer join。
"persons" 表:
id_p
lastname
firstname
address
city
1adams
john
oxford street
london
2bush
george
fifth **enue
new york
3carter
thomas
changan street
beijing
"orders" 表:
id_o
orderno
id_p
17789532
4467833
2245614
2456215
34764
65現在,我們希望列出所有的定單,以及定購它們的人 - 如果有的話。
您可以使用下面的 select 語句:
select persons.lastname, persons.firstname, orders.ordernofrom personsright join orderson persons.id_p=orders.id_porder by persons.lastname結果集:
lastname
firstname
orderno
adams
john
22456
adams
john
24562
carter
thomas
77895
carter
thomas
44678
34764
right join 關鍵字會從右表 (orders) 那裡返回所有的行,即使在左表 (persons) 中沒有匹配的行。
3.交叉聯接(cross join)
sql server 資料查詢優化
前幾周做專案遇到問題與大家分享 因讀取資料關聯n個表,我大部份都採用子查詢 in 當時資料量在10000記錄級內,而且在本地伺服器執行速度都比較快。當再一次匯入幾w條記錄後多表關聯 in 就宕機。然後瘋狂網上搜解決方案。查詢速度慢的原因很多,常見如下幾種 1 沒有索引或者沒有用到索引 2 i o吞吐...
SQL Server中資料查詢基礎
一.資料查詢基礎 1.查詢所有資料 select from 表名 2.根據限制條件查詢資料 select from 表名 where 限制條件 3.根據特定列進行排序,預設為公升序排列 select from 表名 order by 排序列名 公升序 降序 4.使用別名as select stude...
unity之資料查詢
嗨,歡迎來到我們的 狗刨網,我們今天講了很多內容,有資料庫,還有如何連線資料庫,每天我們都會更新新的內容,每天我們都該充實自己的生 活,每天都要有進步。一 資料查詢 基礎 查詢全部的列 select from 表 查詢部分行 select name,age from student where na...