查詢操作
兩張表關聯
SELECT a.*,b.*
FROM table1 AS a
//左連接配接查詢
LEFT JOIN table2 AS b
ON a.id=b.id
WHERE a.id = 1
三張表聯合查詢
如果你的其中一張表一定有資料,而關聯的表有可能有資料也有可能沒資料的話,我們可以通過左連接配接/右連接配接的方式,把其他兩張表結果都查詢。無論關聯的表有沒有資料,主表都可以查詢到資料
如下所示,中間表一定有資料,是以采用左連接配接、右連接配接的方式查詢資料
SELECT a.*,b.*,c.*
FROM table1 AS a
//右連接配接查詢
RIGHT JOIN table2 AS b
ON a.id=b.id
//左連接配接查詢
LEFT JOIN table3 AS c
ON b.id = c.id
WHERE a.id = 1
删除操作
兩張表關聯删除:
DELETE a,b FROM table1 a
INNER JOIN table2 b
ON a.id = b.aid
WHERE a.id = '1'
//或者也可以
DELETE a,b FROM table1 a,table2 b
WHERE a.id = b.aid
AND a.id = '1'
三張表删除
DELETE a,b,c FROM table1 a
INNER JOIN table2 b
ON a.id = b.aid
INNER JOIN table3 c
ON a.id = c.aid
WHERE a.id = '1'
假設a表裡資料,而b表或者c表裡沒資料,那麼就會删除失敗,即删除0條資料
如果你的主表一定有資料,而關聯的表有可能有資料也有可能沒資料的話,我們可以通過左連接配接删除的方式,把兩張表都删除。無論關聯的表有沒有資料,主表都可以删除成功
DELETE a.* ,b.* ,c.*
FROM table1 a
LEFT JOIN table2 b
ON a.id = b.aid
LEFT JOIN table3 c
ON a.id = c.aid
WHERE a.id = 1
版權聲明:本文為原文部落客原創文章,未經原文部落客允許不得轉載。 https://blog.csdn.net/moyanxuan_1993_2_24/article/details/51672904 點選打開原文連結