深入了解join用法

2022-02-25 14:39:25 字數 2213 閱讀 7463

最近面試經常被問到inner join, right join , left join  今晚決定搞清楚這些:

首先先建立兩個表:

create

table

persons

(id_p

intnot

null

primary

key,

lastname

varchar(255) not

null

,firstname

varchar(255

),address

varchar(255

),city

varchar(255))

create

table

orders

(id_o

intnot

null

primary

key,

orderno

intnot

null

,id_p

intnot

null

)

下面我在裡面寫入內容,如下圖所示:

1,persons表

2,orders表

現在步入正題:

1. join(inner join)

只有兩個**都滿足條件,才會列出。inner join 關鍵字在表中存在至少乙個匹配時返回行。如果 "persons" 中的行在 "orders" 中沒有匹配,就不會列出這些行。

select persons.lastname,persons.firstname,orders.orderno from persons inner

join orders on persons.id_p=

orders.id_p

order

by persons.lastname

結果:

2,left join

left join 關鍵字會從左表 (table_name1) 那裡返回所有的行,即使在右表 (table_name2) 中沒有匹配的行。

right join 關鍵字會右表 (table_name2) 那裡返回所有的行,即使在左表 (table_name1) 中沒有匹配的行。

只要其中某個表存在匹配,full join 關鍵字就會返回行。

select persons.lastname,persons.firstname,orders.orderno from persons full

join orders on persons.id_p=

orders.id_p

order

by persons.lastname

結果:

以上僅供自己學習!

深入了解A

一 前言 在這裡我將對a 演算法的實際應用進行一定的 並且舉乙個有關a 演算法在最短路徑搜尋的例子。值得注意的是這裡並不對a 的基本的概念作介紹,如果你還對a 演算法不清楚的話,請看姊妹篇 初識a 演算法 這裡所舉的例子是參考amit主頁中的乙個源程式,使用這個源程式時,應該遵守一定的公約。二 a ...

深入了解A

一 前言 在這裡我將對a 演算法的實際應用進行一定的 並且舉乙個有關a 演算法在最短路徑搜尋的例子。值得注意的是這裡並不對a 的基本的概念作介紹,如果你還對a 演算法不清楚的話,請看姊妹篇 初識a 演算法 這裡所舉的例子是參考amit主頁中的乙個源程式,使用這個源程式時,應該遵守一定的公約。二 a ...

深入了解Dojo Data

譯自http www.sitepen.com blog 2010 10 13 dive into dojo data 使用dojo data有助於快速建立web應用的介面,且易於嵌入各種資料來源。它在使用者介面與底層資料之間提供了一層抽象層,使得使用者介面開發人員能夠專注於ui的開發,而無需擔心資料...