select a . * from TB a where exists(select 1 from TB where name = a . name)得出true和false。當where後面的條件成立時,列出數據,否則為空。
Exists強調是否返回結果集,不要求知道返回什麽。例如:從存在性別=' m '和標記的學生中選擇姓名(從年級中選擇1,其中...).
只要存在由exists引導的子句返回的結果集,那麽exists的條件就成立。請註意,返回的字段總是1。
如果更改為“從等級中選擇2,其中...”,那麽返回的字段是2,沒有意義。所以exists子句並不關心返回什麽,而是關心是否有結果集返回。
擴展數據:
Exists方法描述了如果Dictionary對象中指定的關鍵字存在,則返回True,如果不存在,則返回False。
語法對象。Exists(key)Exists方法語法有以下幾個部分:部分描述對象所必需的內容。總是字典對象的名稱。Key必需,在字典對象中搜索的鍵值。
Exist相當於壹個存在量詞:表示集合的存在,即集合不為空,只作用於壹個集合。
例如,當P不為空時,exist P為真;不存在P表示P為空時為真,in表示標量和壹元的關系。
比如P中的s,表示當s等於P中的某個值時為真;s不在P中意味著當s和P中的每個值都不相等時為真。
出口和不出口
存在(sql返回真實結果集)
不存在(sql不返回真實結果集)
如果not exists子查詢只有自己的查詢條件,那麽只要子查詢中有數據返回,就證明為假,整個執行中不會返回結果;壹旦與外部查詢相關聯,就可以準確地找出數據。
參考資料:
百度百科-存在