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

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

sql總exists是通過什么來評判存在與否

sql總exists是通過什么來評判存在與否

翻閱古今 2019-05-13 09:15:43
sql:select*fromemployeesswherenotexists(select1fromdept_empdwhered.emp_no=s.emp_no)內表s:外表d:網上對exists的解釋:exists是對外表作loop循環(huán),每次loop循環(huán)再對內表進行查詢我的疑問:外表是通過其中一個字段去loop內表,只要有一個字段存在,就是存在?還是外表是通過整條數(shù)據去跟內表匹配,是否存在,如果是這樣,是不是不應是select1總之,沒想明白,exists到底是用什么來判斷是否存在的,一行記錄,一行記錄的一個字段,還是其他?
查看完整描述

2 回答

?
Qyouu

TA貢獻1786條經驗 獲得超11個贊

exists
指定一個子查詢,檢測行的存在。遍歷循環(huán)外表,然后看外表中的記錄有沒有和內表的數(shù)據一樣的。匹配上就將結果放入結果集中。具體sql語句如下:
SELECT
`user`.*
FROM
`user`
WHERE
EXISTS(
SELECT
`order`.user_id
FROM
`order`
WHERE
`user`.id=`order`.user_id
)
使用exists關鍵字進行查詢的時候,首先,我們先查詢的不是子查詢的內容,而是查我們的主查詢的表,也就是說,我們先執(zhí)行的sql語句是:
SELECT`user`.*FROM`user`
然后,根據表的每一條記錄,執(zhí)行以下語句,依次去判斷where后面的條件是否成立:
EXISTS(
SELECT
`order`.user_id
FROM
`order`
WHERE
`user`.id=`order`.user_id
)
如果成立則返回true不成立則返回false。如果返回的是true的話,則該行結果保留,如果返回的是false的話,則刪除該行,最后將得到的結果返回。也可以和IN對比來分辯認識它們Sql語句中IN和exists的區(qū)別及應用
                            
查看完整回答
反對 回復 2019-05-13
  • 2 回答
  • 0 關注
  • 417 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號