身為一名軟件測試人員,工作中遇到需要操作數據庫的情況,太多了。在好幾次面試后都遇到的一些問題,想着記錄一下,方便日后復習,也整理一下自己的思路。
題目:
簡述一下連表查詢時左右連接的區別。
敘述:
左(外)連接(LEFT JOIN),以左表為基准,查詢出左表所有的數據和右表中連接字段相等的記錄,如果右表中沒有對應數據,則在左表記錄后顯示為空(NULL).如果把兩個表分別看成一個集合的話,則顯示的結果為JOIN左邊的集合。
同理,右(外)連接(RIGHT JOIN )是以右表為基准,查詢出右表所有的數據和左表中連接字段相等的記錄,如果左表沒有對應數據則在右表對應數據行顯示為空(NULL).如果把兩個表分別看成一個集合的話,則顯示的結果為JOIN右邊的集合。
內連接(INNER JOIN )是查詢出兩個表對應的數據,如果把兩個表分別看成一個集合的話,內連接的結果即為兩個表的交集。
全連接(FULL JOIN )將兩個表的數據全部查出來,返回左右表中所有的記錄和左右表中連接字段相等的記錄,如果把兩個表分別看成一個集合的話,全外連接的結果即為兩個表的並集。
PS:
其實,當時面試的時候,回答的不是很好,就想着記下來,也算是復習了,哈哈