1.left join
left join是以a表的記錄為基礎的,a可以看成左表,b可以看成右表,left join是以左表為準的.
換句話說,左表(a)的記錄將會全部表示出來,而右表(b)只會顯示符合搜尋條件的記錄(例子中為: a.aid = b.bid).
b表記錄不足的地方均為null.
2.right join
right join(右聯接)和left join的結果剛好相反,這次是以右表(b)為基礎的,a表不足的地方用null填充.
3.inner join
inner join(相等聯接或內聯接) ,inner join並不以誰為基礎,它只顯示符合條件的記錄.
4.示例
(a). select * from a left join b on a.aid =b.bid
(b). select * from a right joing b on a.aid = b.bid
(c). select * from a inner join b on a.aid =b.bid
5.乙個複雜一點的例子
select top 30 t_break_refs.id,t_catalogs.catalog_id,t_hosts.host_name,t_users.user_name,
t_break_refs.break_tag,
t_break_refs.break_time,t_break_events.event_content,t_break_refs.manager_name,
t_break_refs.start_time,t_break_refs.end_time,t_break_refs.note_id
from t_break_refs
left join t_catalogs on t_catalogs.catalog_id = t_break_refs.catalog_id
left join t_hosts on t_catalogs.host_id = t_hosts.host_id
left join t_users on t_catalogs.user_id = t_users.user_id
left join t_break_events on t_break_refs.id = t_break_events.refs_id
where t_break_refs.break_time
between '2013-06-27 15:00:46' and '2013-06-29 17:45:46'
order by operation_time desc
sql查詢語句 連線語句
若乙個查詢同時涉及兩個以上的表,則稱之為連線查詢。它包括等值連線,非等值連線,自然連線,自身連線,外連線和復合條件連線 表名1.列名1 連線運算子 表名2.列名2 當連線運算子為等號 時,稱為等值連線 使用其它運算子時,稱為非等值連線。若在等值連線中把目標列中重複的屬性列去掉則為自然連線。查詢每個學...
SQL查詢語句,內連線,外連線
這幾天做軟體綜合設計的專案,我負責的是服務端,因為目前打算從前端轉型到後台,所以需要補足後台相關的知識。關於專案方面的東西就不介紹了,因為文章的主題是sql,直接給出資料表的設計圖。表之間的連線線表示外來鍵。以專案中的查詢為例,講述巢狀查詢語句以及表之間的連線。1 獲取某一問題的所有回答 回答者 回...
SQL語句的各種連線查詢
連線查詢,等值和非等值連線 若在等值連線中把重複的屬性列去掉,則為自然連線 自身連線,查詢每一門課的間接先修課 外連線,在通常的連線操作中,只有符合條件的元祖才能作為結果輸出。如上上表中沒有200215125學生的資訊,原因是他沒有選課。但有時我們需要以某個表為主題列出所有元祖的情況,比如說以stu...