亚洲国产第一_开心网五月色综合亚洲_日本一级特黄特色大片免费观看_久久久久久久久久免观看

Hello! 歡迎來到小浪云!


如何通過多表查詢獲取特定公司下所有產(chǎn)品的最新檢測(cè)報(bào)告?


如何通過多表查詢獲取特定公司下所有產(chǎn)品的最新檢測(cè)報(bào)告?

多表查詢最新檢測(cè)報(bào)告

求取特定公司下所有產(chǎn)品的最新檢測(cè)報(bào)告,通常要進(jìn)行多表查詢。本文將通過處理產(chǎn)品信息表和檢測(cè)信息表兩個(gè)表的關(guān)聯(lián)數(shù)據(jù),解決此問題。

給定兩張表:產(chǎn)品信息表 pro 和檢測(cè)信息表 procheck。pro 表中 company_id 字段用于關(guān)聯(lián)公司信息,而 procheck 表中的 pro_id 字段與 pro 表中的 id 字段關(guān)聯(lián),每個(gè)產(chǎn)品對(duì)應(yīng)多個(gè)檢測(cè)信息記錄。

初始查詢?nèi)缦拢?/p>

select `pro`.`id`,`pro`.`pm`,`pro`.`company_id`,procheck.id as procheck__id,procheck.pro_id as procheck__pro_id,procheck.checkdate as procheck__checkdate  from `da_pro` `pro`  left join `da_procheck` `procheck` on `pro`.`id`=`procheck`.`pro_id`  where `pro`.`company_id` = 487
登錄后復(fù)制

這個(gè)查詢可返回該特定公司的所有產(chǎn)品及相關(guān)檢測(cè)信息。然而,我們需要僅找出每個(gè)產(chǎn)品的最新檢測(cè)報(bào)告。

可以使用如下改良后的查詢:

(你的sql語句) t1 JOIN (     SELECT pro_id, MAX(checkdate) AS max_checkdate     FROM procheck     GROUP BY pro_id ) t2 ON t1.procheck__pro_id = t2.pro_id AND t1.procheck__checkdate = t2.max_checkdate;
登錄后復(fù)制

這個(gè)查詢通過以下步驟得出最新檢測(cè)報(bào)告:

  1. 使用子查詢求出 procheck 表中每個(gè)產(chǎn)品對(duì)應(yīng)的最新 checkdate,形成臨時(shí)表 t2。
  2. 將 t1 和 t2 在 pro_id 和 checkdate 字段上進(jìn)行連接,確保僅選擇 procheck 表中的最新檢測(cè)報(bào)告。
  3. 最終結(jié)果中將包含該特定公司下的所有產(chǎn)品的最新檢測(cè)報(bào)告。

相關(guān)閱讀