Re: [SQL ] left join表格後where的問題

作者: cutekid (可愛小孩子)   2023-04-27 09:02:11
SELECT *
FROM A
LEFT JOIN B ON A.ID = B.A_ID AND B.del = 0
※ 引述《beolk (藍色方塔)》之銘言:
: 資料庫名稱:MariaDB
: 資料庫版本:10.4.21-MariaDB - mariadb.org binary distribution
: 內容/問題描述:
: 各位先進好,小弟目前有AB兩張關聯表:
: A有ID、name、description等欄位,B有ID、A_ID、title、content、del等欄位。
: del是邏輯刪除的欄位,如果del為1的話代表這筆紀錄已經被使用者刪除看不到。
: 我希望當對應B的紀錄(del=1)或無對應紀錄(del is null)時僅顯示A,
: 若對應B的紀錄(del=0)時同時顯示A跟B。
: 有嘗試過下面這種寫法:
: SELECT A.*, B.*
: FROM A
: LEFT JOIN B ON A.ID = B.A_ID
: WHERE B.del = 0 OR B.del IS NULL
: 可以成功在沒有對應B紀錄時候撈出A,以及del=0時的A與B,
: 但是如果有一筆A只對應到del=1的B紀錄時,上面的寫法就撈不出這筆A了。
: 請教各位先進該如何修改我的SQL,謝謝。
作者: beolk (藍色方塔)   2023-04-28 00:56:00
問題解決了,非常感謝您的回文~^^~
作者: cutekid (可愛小孩子)   2023-04-28 02:11:00
不客氣,祝順心

Links booklink

Contact Us: admin [ a t ] ucptt.com