簡體   English   中英

使用WHERE mysql查詢從主表中獲取所有記錄,並從子表中進行匹配

[英]Get all records from master table and matching from child using WHERE mysql query

我的MySQL表中有兩個表:
1) mast_checkup (master)
2) tbl_lab_checkup (child)

表結構如下:
1) mast_checkup:

-Checkid(pk)
-標題
-說明

2) tbl_lab_checkup

-labcheckupid(pk)
-labid(fk)
-mastcheckupid(fk)
-折扣
-費用

我想顯示主表中的所有記錄以及子表中的所有記錄,其中labid ='1我嘗試了以下查詢。

SELECT * FROM mast_checkup mc
LEFT JOIN tbl_lab_checkup tlc ON
mc.checkupid=tlc.mastcheckupid WHERE
tlc.ladid=1

無法獲得確切的結果。

我需要的是專利表中的所有記錄以及子項中的匹配項,如果子項中沒有找到匹配項,則應導致所有主字段和空子字段

所需結果

----------------------------------------------------------------------------------------
checkid | title   | labcheckupid| labid | discount | cost
----------------------------------------------------------------------------------------
   1    |title 1  |    1    |1      |  5       | 1500

   2    |title 2  |    NULL |NULL   |NULL      |    NULL
----------------------------------------------------------------------------------------

第一個是同時在主表和子表中的記錄,第二個僅在主表中而不在子表中

對此要求有解決方案嗎?

我相信這就是您所需要的。

SELECT * FROM mast_checkup mc
LEFT JOIN tbl_lab_checkup tlc ON mc.checkid=tlc.mastcheckupid
AND tlc.labid=1

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM