找出不在另外一張表的記錄
作者:佚名 時間:2015-09-04 分享到:
假如要查詢在a表中存在,但是在b表中不存在的記錄,應該如何查詢。為了便于說明,我們假設a表和b表都只有一個字段id,a表中的記錄為{1,2,3,4,5},b表中的記錄為{2,4},那么我們需要通過一個sql查詢得到{1,3,5}這樣的結果集。
一般解法(效率低)
看到這個題目,我們首先想到的可能就是not in這樣的關鍵字,具體的查詢語句如下:
select ta.* from ta where ta.id not in(select tb.id from tb)
上述查詢語句的查詢結果集確實是{1,3,5},用navicat執行上述語句,得到如下圖所示結果:
如沒特殊注明,文章均為上海聯楷網絡原創,轉載請注明來自:http://www.ktcbnqb.cn/contact/20151229/n7269.html