mysql中,“not exists”是不存在的意思,在where后進(jìn)行條件判斷,后面緊跟子查詢語句,根據(jù)子查詢語句有沒有結(jié)果來進(jìn)行判斷,語法為“select*from TableA a where Not Exists (子查詢語句)”。
本教程操作環(huán)境:windows10系統(tǒng)、mysql8.0.22版本、Dell G3電腦。
mysql中not exists的用法是什么
這里著重介紹Not?Exists(Exists用法類似),Not?Exists?不存在
用法:
Select??*?from?TableA??a??where?Not?Exists?(Select?*?from?TableB??b?where?a.id=b.id?and?a.name=b.name);
1、Not?Exists?用在where之后,且后面緊跟子查詢語句(帶括號(hào));
2、Not?Exists(Exists)?并不關(guān)心子查詢的結(jié)果具體是什么,只關(guān)心子查詢有沒有結(jié)果;
3、這條語句的意思,把TableA的記錄逐條代入到子查詢,如果子查詢結(jié)果集為空,說明不存在,那么這條TableA的記錄出現(xiàn)在最終結(jié)果集,否則被排除;
用法:
Select?*?from?TableA?a?where?Not?Exists?(Select?1?from?TableB);
這條語句子查詢無論什么情況下都不為空,導(dǎo)致最終的結(jié)果集為空,因?yàn)門ableA中每條記錄對(duì)應(yīng)的子查詢都有結(jié)果集,表示都存在,所以最終結(jié)果集為空;
推薦學(xué)習(xí):mysql視頻教程
? 版權(quán)聲明
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載。
THE END
喜歡就支持一下吧
相關(guān)推薦