有3个集合, 从其中一个集合中删除同时存在于另外两个集合的元素
生活随笔
收集整理的這篇文章主要介紹了
有3个集合, 从其中一个集合中删除同时存在于另外两个集合的元素
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
如下分享的郵件,在博客園做個記錄,以便以后使用。
在這里,其實也想倡導一下程序員要具有的分享精神。鼓勵大家多分享,平時有什么新的收獲,最好在team里做個分享 。分享也是一種很好的事情。對團隊來說,可以形成很好的工作氛圍,通過提高每個人的能力進而增強組織戰斗力。對個人來說,一來提高了自己的表達能力,二來,別人可能會提出一些疑問,自己通過學習可以掌握更全面更深入的知識。
?
發件人: ZHANGGUOZHAN 發送時間: 2013-01-10 15:22:02 收件人: zgz1230; guozhan_zhang; 853105539 抄送: jiangjuninfo; GREENSOUL; daizhize; yanwenjing 主題: 分享:有3個集合, 從其中一個集合中刪除同時存在于另外兩個集合的元素 ---- ** 有3個集合, 從其中一個集合中刪除同時不在另外兩個集合的元素 ---- ** 很簡單的問題,我卻思考良久才得到答案 CREATE TABLE #(id INT) CREATE TABLE #A(id INT) CREATE TABLE #B(id INT)INSERT # VALUES(1),(2),(3),(4) INSERT #A VALUES(1),(3) INSERT #B VALUES(2),(3)-- ** 從命題我們可知,要刪除的集合是{3}-- 先想到了這句sql, 進而知道了如何求解 SELECT * FROM # JOIN #A ON #.id=#A.id JOIN #B ON #.id=#B.id-- 下面語句正確,可以得到我們想要的結果{3} SELECT * FROM # WHERE EXISTS(SELECT 1 FROM #a WHERE id=#.id) AND EXISTS(SELECT 1 FROM #b WHERE id=#.id)-- PS:下面語句的結果是{4},即同時不在另外兩個集合 SELECT * FROM # WHERE NOT EXISTS(SELECT 1 FROM #a WHERE id=#.id) AND NOT EXISTS(SELECT 1 FROM #b WHERE id=#.id)-- PS:下面語句正確,可以得到排除了同時在另外兩個集合的元素后的集合:{1,2,4} SELECT * FROM # WHERE NOT EXISTS(SELECT 1 FROM #a JOIN #B ON #A.id = #B.id WHERE #A.id=#.id)DROP TABLE #,#A,#B
轉載于:https://www.cnblogs.com/buguge/archive/2013/01/10/2854962.html
總結
以上是生活随笔為你收集整理的有3个集合, 从其中一个集合中删除同时存在于另外两个集合的元素的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 不要再代码里频繁的new和delete
- 下一篇: 常用的设计模式