您好,登錄后才能下訂單哦!
這篇文章主要講解了“mysql子查詢(xún)?cè)趺词褂谩?,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“mysql子查詢(xún)?cè)趺词褂谩卑桑?/p>
出現(xiàn)在其他語(yǔ)句中的 select 語(yǔ)句,稱(chēng)為子查詢(xún)或內(nèi)查詢(xún);外部的查詢(xún)語(yǔ)句,稱(chēng)為主查詢(xún)或 外查詢(xún) .
-- 子查詢(xún) -- 查詢(xún)的條件來(lái)自于另一查詢(xún)的結(jié)果 SELECT * FROM t_user WHERE number=(SELECT number FROM t_user WHERE NAME='張三')
當(dāng)然子查詢(xún)也有類(lèi)型,分為以下幾種 :
標(biāo)量子查詢(xún)(結(jié)果集只有一行一列)
列子查詢(xún)(結(jié)果集只有一列多行)
行子查詢(xún)(結(jié)果集有一行多列)(較少)
表子查詢(xún)(結(jié)果集一般為多行多列)
這里我們以新建t_user表為例
-- select語(yǔ)句后面,將t1查詢(xún)出的結(jié)果作為子查詢(xún)的條件 SELECT t1.number, (SELECT NAME FROM t_user t2 WHERE t1.name = t2.name) FROM t_user t1
查詢(xún)結(jié)果 :
-- insert into 后跟子查詢(xún) INSERT INTO t_user(number,NAME,age,birthday,weight,sex,opertime) SELECT number,NAME,age,birthday,weight,sex,NOW() FROM t_user WHERE id=3
這里需要注意的是 update與delete
UPDATE t_user SET NAME='abc' WHERE number=(SELECT number FROM t_user WHERE weight=110)
DELETE FROM t_user WHERE id=(SELECT id FROM t_user WHERE id=7)
上述這兩條sql , mysql是不允許我們這樣去執(zhí)行的 :
-- where后跟標(biāo)量子查詢(xún) -- 查詢(xún)體重最大的人信息 SELECT * FROM t_user WHERE weight=(SELECT MAX(weight) FROM t_user) -- where后跟列子查詢(xún) -- 查詢(xún)體重大于或等于130的人信息 SELECT * FROM t_user WHERE weight IN (SELECT weight FROM t_user WHERE weight>=130) -- where后跟行子查詢(xún) -- 查詢(xún)年齡最大,體重最大的人的信息 SELECT * FROM t_user WHERE (age,weight) = (SELECT MAX(age),MAX(weight) FROM t_user)
from 后面 : 可跟表子查詢(xún)
表字查詢(xún)的結(jié)果是多行多列, 也就是一個(gè)表
-- 表子查詢(xún) SELECT t.age FROM (SELECT age,weight FROM t_user)t
結(jié)果 :
感謝各位的閱讀,以上就是“mysql子查詢(xún)?cè)趺词褂谩钡膬?nèi)容了,經(jīng)過(guò)本文的學(xué)習(xí)后,相信大家對(duì)mysql子查詢(xún)?cè)趺词褂眠@一問(wèn)題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是億速云,小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。