在數(shù)據(jù)庫中,select語句不僅可以查詢表中信息,還可以用來查詢多個表的信息,將查詢到的信息返回出來,跟小編一起學習吧。
在本文開始前我們先創(chuàng)建好兩張數(shù)據(jù)表(employee和employee_record),employee數(shù)據(jù)表存放員工的id號,姓名,薪水以及員工所在的部門。而employee_record存放員工之前的工作經(jīng)歷,下面是表中數(shù)據(jù)。將根據(jù)這兩張表進行操作。
內(nèi)連接
選取多張表中互相匹配的數(shù)據(jù),并進行輸出。
語法:
(select?表.字段,....??from?表1名,表2名,...??where?[匹配的條件比如?表1.字段=表2.字段];
其中:
-
表:是指需要操作的數(shù)據(jù)表,如我這里是employee和employee_record;
-
字段:是指需要進行操作的字段名。
如果覺得看字看不下去,那我們來看看一個例子:
select 語句可以給字段起別名!直接寫在需要查詢顯示的字段的后面就行,也可以給表起別名。
外連接
外鏈接不僅選取多張表中相互匹配的記錄,其他不匹配的記錄也會查詢出來。
左連接
包含左邊表中的所有記錄(包括右表中沒有和它匹配的記錄),所謂的左邊表是以left join來區(qū)分的,在left join左邊的是左邊表,在其右邊的是右邊表。
語法:
select?*?from?表1?left?join?表2?on?表1.字段=表2.字段;
我們可以看到雖然下面幾行右邊沒有與之對應(yīng)的,但他還是顯示出來了。
右連接
包含右邊表中的所有記錄(包括左表中沒有和它匹配的記錄)。右連接的語法與左連接語法極為相似,只是個別單詞不同。
語法:
select?*?from?表1?right?join?表2?on?表1.字段=表2.字段;
可以看到右連接的顯示結(jié)果和左連接的恰好相反。
注意:左連接和右連接是可以相互轉(zhuǎn)換。
免費學習推薦:mysql視頻教程