我有2個mysql資料表
a表乙個欄位aname,資料:a、b、c、d、e
b表乙個欄位bname,資料:a、b、c
現在我想查出存在於a表、但不存在於b表裡的資料:d、e
不知道mysql裡面的語句這麼寫???
標準sql語句大概是:select aname from a where aname not in(select bname from b)
但是mysql不支援巢狀查詢~~~有什麼其他方法嗎?好象join可以多表連線查詢,但是沒想出來怎樣寫語句
如果在乙個left join中沒有右表的匹配記錄,乙個所有列設定為null的行被用於右表。你可以使用這個事實指出表中在另乙個表中沒有對應記錄的記錄:
mysql> select table1.* from table1
left join table2 on table1.id=table2.id
where table2.id is null;
這個例子找出在table1中所有的行,其id值在table2中不存在(即,所有table1中的在table2中沒有對應行的行)。當然這假定table2.id被宣告為not null。
====
摘自mysql中文參考手冊
例項select `a`.`hotelid` from `hotel_citys` `a` left join `hotel_jiages` `b` on
`a`.`hotelid` = `b`.`hotelid` where `b`.`hotelid` is null
兩個鍊錶第乙個公共節點
先讓長的鍊錶的指標先走長的之差的步數,兩個再一起走,如果相遇就是第乙個公共節點 如果沒交點,就都走到空 struct listnode class solution while pl2 null 復位指標到頭節點 pl1 phead1 pl2 phead2 int dif len 0 if len1...
鍊錶問題 兩個鍊錶的第乙個公共節點
題目 輸入兩個鍊錶,找出它們的第乙個公共結點 分析 對於這個問題有三種思路 1 蠻力演算法,當遍歷到乙個節點時,就在另外乙個鍊錶上順序遍歷,並且判斷是否相等,如果想等就是第乙個重合的節點,對於兩個長度分別為m和n的鍊錶,所需要的時間為o m n 實現如下 struct listnode 蠻力解法 l...
兩個鍊錶的第乙個公共結點
思路 獲取兩個鍊錶的長度,求的長度差n,讓長鍊表先遍歷n次,然後長鍊表和短鍊錶同時遍歷,當長鍊錶和短鍊錶相等時,即為第一公共結點。o m1 m2 public class findfirstcomnode int len1 getnodelength root1 int len2 getnodele...