第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定

多表刪除的理解

?首先,通過以下代碼對tdb_goods表進(jìn)行查詢,得到一個(gè)臨時(shí)的參照表。

?

???查詢代碼如下:

http://img1.sycdn.imooc.com//591bd5f90001eb0f06500157.jpg

????這段代碼的意思是:

????????1、查詢的字段是:tdb_goods表中的good_id, goods_name。

????????2、查詢的對象是: count(goods_name) >= 2。即,查詢tdb_goods表中?goods_name這一列存在重復(fù)的記錄。

????????3、對查詢到的記錄進(jìn)行分組。GROUP BY goods_name意思是:如果goods_name列存在多條重復(fù)的記錄,則只顯示查找到的第一條記錄,并過濾掉后面重復(fù)的記錄。由于事先并沒有使用ORDER BY對記錄排序,默認(rèn)的查找順序應(yīng)該是記錄插入的順序。即此時(shí)查詢到的第一條記錄,就是最先插入的記錄。

?

然后,以上面查詢得到的表為參照,對原表(即tdb_goods)進(jìn)行刪除操作:

代碼如下:

http://img1.sycdn.imooc.com//591be1680001d17106400111.jpg

這段代碼我是這樣理解的:

????1、DELETE t1 ????表示要在t1表中刪除記錄,t1 即 tdb_goods。

????2、t1 LEFT JOIN t2 ????將t1與t2(即上面的參照表)連接起來,連接方式是LEFT JOIN。當(dāng)然這里也可以用別的連接方式,比如:INNER JOIN/ RIGHT JOIN 結(jié)果都是一樣的。

????3、ON t1.goods_name = t2.goods_name ????連接的條件

????4、WHERE t1.goods_id > t2.goods_id;????這里表示的是:刪除t1中?t1.goods_id > t2.goods_id 且 t1.goods_name=t2.goods_name的所有記錄。

正在回答

2 回答

分析的很不錯(cuò)!

0 回復(fù) 有任何疑惑可以回復(fù)我~

很有啟發(fā),這段代碼應(yīng)該分成三點(diǎn)分析,

?1、DELETE t1 ????表示要在t1表中刪除記錄,t1 即 tdb_goods。

?2、t1 LEFT JOIN t2 ????將t1與t2(即上面的參照表)連接起來,(形成一個(gè)新的虛擬的表)連接方式是LEFT JOIN。當(dāng)然這里也可以用別的連接方式,比如:INNER JOIN/ RIGHT JOIN 結(jié)果都是一樣的。ON t1.goods_name = t2.goods_name ????連接的條件

大家可以把這個(gè)左連接的表單獨(dú)顯示出來,用如下語句:

?select?*?from??tdb_goods?AS?t1?LEFT?JOIN?
?(SELECT?goods_id,goods_name?FROM?tdb_goods?GROUP?BY?goods_name?HAVING?count(goods_name)?>=?2?)?AS?t2
?ON?t1.goods_name?=?t2.goods_name;

得到的結(jié)構(gòu)

https://img1.sycdn.imooc.com//5ca599be000102ca14160420.jpg

3 、WHERE t1.goods_id > t2.goods_id;? ?這里表示的是:刪除t1中?t1.goods_id > t2.goods_id的所有記錄。


0 回復(fù) 有任何疑惑可以回復(fù)我~
#1

Silent_Walke

from之后的是where的作用空間 為什么要用左連接,因?yàn)槭莿h除左表中部分?jǐn)?shù)據(jù),所以用左連接把左表全部顯示出來比較好,整體邏輯上。 為什么內(nèi)連接和右連接也行,因?yàn)橐獎(jiǎng)h除的部分在兩個(gè)表的公共部分,而內(nèi)連接和右連接也有公共部分,所以也可以!
2019-04-04 回復(fù) 有任何疑惑可以回復(fù)我~

舉報(bào)

0/150
提交
取消
與MySQL的零距離接觸
  • 參與學(xué)習(xí)       396729    人
  • 解答問題       3497    個(gè)

本課程涵蓋全部MySQL數(shù)據(jù)庫的基礎(chǔ),學(xué)習(xí)MySQL數(shù)據(jù)庫的基礎(chǔ)知識

進(jìn)入課程

多表刪除的理解

我要回答 關(guān)注問題
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號