mysql - SQL查詢問題
問題描述
表A 表Buser_id name id user_id sorce 1張三 1 1 78 2李四 2 2 3王五 3 5 80 想要查詢表A中 沒有分數或者表B中沒有分數記錄的,sql如何寫?select A.user_idid A.name FROM A LEFI JOIN BON A.user_id=B.user_id WHERE B.sorce=’’;這個SQL不知道對不對?1.表A中的user_id=3的王五,但王五的記錄在B表中沒有,我用左鏈接查詢出來2.sorce =’’解決分數為空 查詢出來
問題解答
回答1:不太同意一樓的sql語句,第一是因為子查詢,第二好像沒有檢索出沒有分數記錄的。
SELECT * FROM product.a left join product.b on aid=aid2 where b.aid2 is null or sc is null;
這是我自己本地測試的,用的是mysql,但是其實都差不多。先用表連接把兩個表按照規定的id鏈接在一起,aid對應是你a表里的userid,aid2對應是你b表的userid,然后最后上圖。圖一是我的sql語句的結果,圖二是我的a表,圖三是我的b表。
這也只是解決的一種方式,我也不是很擅長后臺數據庫~~希望對你有幫助,也希望有更好的解決方案。因為我沒有考慮性能問題。
回答2:select * from 表A where user_id not in (select user_id from 表B where score >=0 )回答3:
select user_id, namefrom table_a where user_id not in (select user_id from table_b)union allselect b.user_id, a.namefrom table_b binner join table_a a on a.user_id = b.user_idwhere b.sorce=’’
有時候判斷條件語句過于復雜可以使用union all將各個條件結果連接在一起.
相關文章:
1. python - 爬蟲模擬登錄后,爬取csdn后臺文章列表遇到的問題2. mysql - 分庫分表、分區、讀寫分離 這些都是用在什么場景下 ,會帶來哪些效率或者其他方面的好處3. javascript - angular使從elastichearch中取出的文本高亮顯示,如圖所示4. 視頻文件不能播放,怎么辦?5. python bottle跑起來以后,定時執行的任務為什么每次都重復(多)執行一次?6. javascript - 求幫助 , ATOM不顯示界面!!!!7. javascript - ios返回不執行js怎么解決?8. javascript - 移動端自適應9. html5 - HTML代碼中的文字亂碼是怎么回事?10. mysql 查詢身份證號字段值有效的數據
