4 回答

TA貢獻1807條經驗 獲得超9個贊
舉個例子:
現在需要統計超市每個商品買了多少。
相關的表有兩個:
商品表(商品編號,商品名稱)
銷售表(商品編號,銷售數量,月份)
如果直接下面的語句查詢,就會遺漏沒有銷售過的商品。
1 2 3 | Select 商品名稱,Sum(銷售數量) From 商品表,銷售表 Where 商品表.商品編號=銷售表.商品編號 |
這時就需要使用左外連接或者右外連接
1 2 3 4 5 | Select 商品名稱,isnull(Sum(銷售數量),0) as 銷售數量 From 商品表 Left Join 銷售表 On 商品表.商品編號=銷售表.商品編號 --SQL SERVER代碼 --沒有銷售過的商品,使用Sum(銷售數量)會顯示為null,用isnull將null值轉換成0 |

TA貢獻1844條經驗 獲得超8個贊
內連接:取的兩個表的(有能連接的字段),的交集,即字段相同的。利用內連接可獲取兩表的公共部分的記錄,
select * from A,B where A.Aid=B.Bnameid
與 Select * from A JOIN B ON A.Aid=B.Bnameid的運行結果是一樣的。
外連接:左右連接。
外連接分為兩種,一種是左連接(Left JOIN)和右連接(Right JOIN)
(1)左連接(Left JOIN):即圖3公共部分記錄集C+表A記錄集A1。語句如下: select * from A Left JOIN B ON A.Aid=B.Bnameid A的字段全有,查詢出來在結果集的左邊。
(2)右連接(Right JOIN):即圖3公共部分記錄集C+表B記錄集B1。語句如下:select * from A Right JOIN B ON A.Aid=B.Bnameid
- 4 回答
- 0 關注
- 1243 瀏覽
添加回答
舉報