找回密碼
 立即註冊
搜索
熱搜: SQL C# AI F1
查看: 1418|回復: 0

[技術]SQL IN EXISTS AND NOT EXISTS用法

[複製鏈接]
灌水成績
725
3
111764
主題
回帖
積分

等級頭銜

積分成就 威望 : 999
貢獻 : 999
金錢 : 108039
精華 : 0
在線時間 : 332 小時
最後登錄 : 2026-5-5

豐功偉業

分享
分享 分享到Facebook

好康介紹

準備中
發表於 2015-8-31 15:45:27 | 顯示全部樓層 |閱讀模式
琪琪小站免責聲明
本論壇仍是開放式討論平台,本論壇對於所有討論的真實性、完整性及立場等,不負任何法律責任。
而一切留言之言論只代表留言者個人意見,並非本網站之立場,用戶不應信賴內容,並應自行判斷內容之真實性。
於有關情形下,用戶應尋求專業意見 (如涉及醫療、法律或投資等問題)。
由於本論壇受到「即時上載留言」運作方式所規限,故不能完全監察所有留言,若讀者發現有留言出現問題,請聯絡我們。
kikishop有權刪除任何留言及拒絕任何人士上載留言,同時亦有不刪除留言的權利。
切勿撰寫粗言穢語、誹謗、渲染色情暴力或人身攻擊的言論,敬請自律。
本網站保留一切法律權利。
[mw_shl_code=sql,true]SELECT Emp_ID,Emp_Name,Ext,Dept_ID
FROM Employees
WHERE Dept_id IN
(SELECT Dept_ID from Departments
        WHERE Mgr_id IN('890032','880017')
        )
        ORDER BY Dept_id,Emp_Name
        

SELECT Emp_ID,Emp_Name,Ext,Dept_ID
FROM Employees E
WHERE EXISTS
(SELECT Dept_ID from Departments D
      WHERE E.Dept_ID=D.Dept_ID
        AND Mgr_id IN('890032','880017')
        )
        ORDER BY Dept_id,Emp_Name


SELECT Emp_ID,Emp_Name,Ext,Dept_ID
FROM Employees E
WHERE NOT EXISTS
(SELECT Dept_ID from Departments D
      WHERE E.Dept_ID=D.Dept_ID
        AND Mgr_id IN('890032','880017')
        )
        ORDER BY Dept_id,Emp_Name[/mw_shl_code]

前兩個的用法其實是一樣的,只是EXISTS應用是在子查詢上
這兩個分別為巢狀子查詢多值串列、和相關子查詢的用法EXISTS
這兩個差異點在於子查詢是否可以單獨執行,以及相關子查詢必須要
和相關外層查詢相互關聯。


琪琪小站免責聲明
本論壇仍是開放式討論平台,本論壇對於所有討論的真實性、完整性及立場等,不負任何法律責任。
而一切留言之言論只代表留言者個人意見,並非本網站之立場,用戶不應信賴內容,並應自行判斷內容之真實性。
於有關情形下,用戶應尋求專業意見 (如涉及醫療、法律或投資等問題)。
由於本論壇受到「即時上載留言」運作方式所規限,故不能完全監察所有留言,若讀者發現有留言出現問題,請聯絡我們。
kikishop有權刪除任何留言及拒絕任何人士上載留言,同時亦有不刪除留言的權利。
切勿撰寫粗言穢語、誹謗、渲染色情暴力或人身攻擊的言論,敬請自律。
本網站保留一切法律權利。
FengLeo Internet Multimedia Services WorkStation
*********************************************************
Genie
WebUrl:https://www.fengleo.com/
回復

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 立即註冊

本版積分規則

Archiver|手機版|小黑屋|Ki Ki Shop |網站地圖

GMT+8, 2026-5-6 11:34 , Processed in 0.081551 second(s), 21 queries .

Powered by FengLeo X3.5

© 2020-2025 Fengleo.com

快速回復 返回頂部 返回列表