91av免费观看_日韩视频在线免费看_日本xxxx色视频在线观看免费_伊人222综合网图片_国产二区三区在线_91麻豆麻豆

IT之道-艾銻知道

您當前位置: 主頁 > 資訊動態 > 艾銻分享 >

艾銻知識 |SQL中Exists的用法


2020-03-04 17:45 作者:admin 瀏覽量:
煩惱即菩提,菩提即智慧
 
 
 
疫情放慢了管理者的腳步,卻沒有放慢管理者的心,對于企業來說,在富有的時候,可以說說情懷,說說理想,但在貧窮受困的時候,沒有飯吃的時候,情懷和理想其實并不重要,重要的是下一頓吃什么?在哪吃呢?
 
前幾天,有篇文章報道某云南大型企業的人事總監被總經理怒罵的郵件很火,為什么會發生這樣的事,我覺得身為一個企業的員工,無論你處在什么崗位,什么職位,一定要審時度勢,要知道企業要什么,俗話說,大河有水小河滿,只有企業活下來了,活好了,組織里的員工才能真正拿到自己想要的,如果在危難時機,你還在堅持自己觀點,抱持著自己的思維不改變,不能與企業思想同步,那最終也不會有什么好的結果.
 
在這里艾銻無限給已經上班或即將上班的各個企業伙伴一些忠告:
 
1,困難時期,在為自己著想的同時多想想能為企業做點什么,今天你的付出,明天不一定會有收獲,但長久來看,能量守恒定律,你是不會吃虧的.
 
2,在經濟還沒復蘇的時期,企業還不太忙的時候,除了做好自己部門手頭上的工作以外,把自己的大腦開動起來,如果你是職員,就想想假如你是這個部門經理,你如何做可以讓部門的損失降到最低,讓收益提升到最大.如果你是經理就想想假如你是企業的CEO,你如何做可以讓企業快速恢復狀態,讓業務快速發展起來,讓現金流可以流動起來?
 
3,如果你處在花錢的部門,就想想如何做可以省錢,又可以為部門創收,如果你是創收的部門,就想想原來從來就沒想過的問題,因為你不能破舊就不能立新,不能創造就是在消耗.
 
4,管理團隊間,如果不是能力問題,不僅行動要勤快,大腦更要勤快一些,除了思考自己部門的工作,也要思考其他部門的工作,你的團隊可以做些什么更利于其他部門的發展,你可以做些什么更助于其他管理者達成目標,整個企業就像一臺齒輪吻合的機器,只有彼此主動吻合才能讓這臺機器更好的運轉,這也像打群架,如果每一個人都能照顧好自己,還能為他人著想,就不會受傷,也能全身而退,有一個人需要他人照顧,就很可能有人受傷,并導致全隊受損.
 
5,無論什么時期,不要害怕困難,不要拒絕煩惱, 煩惱即菩提,菩提即智慧,偉大的洞見和上師都是來自于苦難和無數次的折磨.相信宇宙的安排,無論是事,還是人,來到你的身邊就是成就你的,所以把心安于當下,盡一切努力做到盡善盡美.
 
接下來分享一則技術信息,以許會對你的企業有所幫助:
 
 
 
艾銻知識 |SQL中Exists的用法
比如在Northwind數據庫中有一個查詢為
?
1
2
3
SELECT c.CustomerId,CompanyName FROM Customers c
WHERE EXISTS(
SELECT OrderID FROM Orders o WHERE o.CustomerID=c.CustomerID)
這里面的EXISTS是如何運作呢?子查詢返回的是OrderId字段,可是外面的查詢要找的是CustomerID和CompanyName字段,這兩個字段肯定不在OrderID里面啊,這是如何匹配的呢?
EXISTS用于檢查子查詢是否至少會返回一行數據,該子查詢實際上并不返回任何數據,而是返回值True或False
EXISTS 指定一個子查詢,檢測 行 的存在。
語法: EXISTS subquery
參數: subquery 是一個受限的 SELECT 語句 (不允許有 COMPUTE 子句和 INTO 關鍵字)。
結果類型: Boolean 如果子查詢包含行,則返回 TRUE ,否則返回 FLASE 。
例表A:TableIn 例表B:TableEx
 
(一). 在子查詢中使用 NULL 仍然返回結果集
?
1 select * from TableIn where exists(select null)
等同于: select * from TableIn
  
(二). 比較使用 EXISTS 和 IN 的查詢。注意兩個查詢返回相同的結果。
?
1
2
select * from TableIn where exists(select BID from TableEx where BNAME=TableIn.ANAME)
select * from TableIn where ANAME in(select BNAME from TableEx)
 
(三). 比較使用 EXISTS 和 = ANY 的查詢。注意兩個查詢返回相同的結果。
?
1
2
select * from TableIn where exists(select BID from TableEx where BNAME=TableIn.ANAME)
select * from TableIn where ANAME=ANY(select BNAME from TableEx)
 
NOT EXISTS 的作用與 EXISTS 正好相反。如果子查詢沒有返回行,則滿足了 NOT EXISTS 中的 WHERE 子句。
結論:
EXISTS(包括 NOT EXISTS )子句的返回值是一個BOOL值。 EXISTS內部有一個子查詢語句(SELECT ... FROM...), 我將其稱為EXIST的內查詢語句。其內查詢語句返回一個結果集。 EXISTS子句根據其內查詢語句的結果集空或者非空,返回一個布爾值。
一種通俗的可以理解為:將外查詢表的每一行,代入內查詢作為檢驗,如果內查詢返回的結果取非空值,則EXISTS子句返回TRUE,這一行行可作為外查詢的結果行,否則不能作為結果。
分析器會先看語句的第一個詞,當它發現第一個詞是SELECT關鍵字的時候,它會跳到FROM關鍵字,然后通過FROM關鍵字找到表名并把表裝入內存。接著是找WHERE關鍵字,如果找不到則返回到SELECT找字段解析,如果找到WHERE,則分析其中的條件,完成后再回到SELECT分析字段。最后形成一張我們要的虛表。
WHERE關鍵字后面的是條件表達式。條件表達式計算完成后,會有一個返回值,即非0或0,非0即為真(true),0即為假(false)。同理WHERE后面的條件也有一個返回值,真或假,來確定接下來執不執行SELECT。
分析器先找到關鍵字SELECT,然后跳到FROM關鍵字將STUDENT表導入內存,并通過指針找到第一條記錄,接著找到WHERE關鍵字計算它的條件表達式,如果為真那么把這條記錄裝到一個虛表當中,指針再指向下一條記錄。如果為假那么指針直接指向下一條記錄,而不進行其它操作。一直檢索完整個表,并把檢索出來的虛擬表返回給用戶。EXISTS是條件表達式的一部分,它也有一個返回值(true或false)。
在插入記錄前,需要檢查這條記錄是否已經存在,只有當記錄不存在時才執行插入操作,可以通過使用 EXISTS 條件句防止插入重復記錄。
?
1
2
3
INSERT INTO TableIn (ANAME,ASEX)
SELECT top 1 '張三', '男' FROM TableIn
WHERE not exists (select * from TableIn where TableIn.AID = 7)
EXISTS與IN的使用效率的問題,通常情況下采用exists要比in效率高,因為IN不走索引,但要看實際情況具體使用:
IN適合于外表大而內表小的情況;EXISTS適合于外表小而內表大的情況。
以上所述是小編給大家介紹的SQL中Exists的用法,希望對大家有所幫助
 

相關文章

IT外包服務
二維碼 關閉
主站蜘蛛池模板: 亚洲欧美综合一区二区三区 | 真人做爰高潮全过程毛片 | 日本亚洲中文字幕不卡 | 老色鬼在线精品视频 | 欧美疯狂xxxxbbbb牲交 | 国产乱精品一区二区三区 | 久久久国产精品厨房 | 欧美激情视频一区二区三区 | 日韩高清在线一区二区三区 | 亚洲欧美日韩精品专区 | 欧美涩涩涩 | 精品国产SM最大网站 | 亚洲AV日韩AV一区二区三曲 | 调教奴隶色の女教师在线播放 | 在线吸色 | 国产成年在线 | 真实乱子伦露脸 | 国产精品天干天干在线观看 | 狠狠狠狼鲁欧美综合网 | 噜啊噜在线成人A片观看 | 公在厨房扒开腿让我爽了在线观看 | 色老大久久综合网天天 | 萌白酱JK制服透明白丝喷水 | 亚洲AV美国AV产亚洲AV图片 | 亚洲中文字幕乱码熟女在线 | 国产欧美精品亚洲日本一区 | 在线毛片观看 | 亚洲国产成人va在线观看 | 国产AV国产精品白丝JK制服 | 久久精品无码专区免费 | 成 人 网 站免费观看 | 日韩人妻系列无码专区 | gogogo高清在线观看视频中文 | 狠狠爱俺也去去就色 | 青青热久免费精品视频在线播放 | 国内免费久久久久久久久 | caoporn97免费公开视频 | 色欲av伊人久久大香线蕉影院 | 中国美女黄色一级片 | 污污网站18禁在线永久免费观看 | 日本高清熟妇老熟妇 |