ROW_NUMBER() OVER(PARTITION BY "RECORD" ORDER BY USC_DATE DESC) AS rn
FROM idx_biz_jg_construction_info
),
-- 获取每个RECORD最新的检测信息
latest_inspection AS (
SELECT
"RECORD",
SEQUENCE_NBR AS jySeq,
INSPECT_ORG_NAME AS inspectOrgName,
INSPECT_ORG_CODE AS inspectOrgCode,
INSPECT_CONCLUSION AS inspectConclusion,
NEXT_INSPECT_DATE AS nextInspectDate,
INSPECT_REPORT AS inspectReport,
INSPECT_TYPE AS inspectType,
INSPECT_STAFF AS inspectStaff,
INSPECT_DATE AS inspectDate,
INSPECT_REPORT_NO as inspectReportNo,
ROW_NUMBER() OVER(PARTITION BY "RECORD" ORDER BY INSPECT_DATE DESC) AS rn
FROM idx_biz_jg_inspection_detection_info
)
SELECT
ibjtpp."PIPE_NAME" AS pipeName,
ibjtpp."PIPELINE_NUMBER" AS pipelineNumber,
...
...
@@ -889,23 +917,29 @@
ibjdi."DESIGN_UNIT_NAME" AS designUnitName,
ibjui."USE_DATE" AS useDate,
ibjui."RECORD" AS record,
(SELECT SEQUENCE_NBR from idx_biz_jg_construction_info where "RECORD" = ibjui."RECORD" ORDER BY USC_DATE DESC limit 1) constructionInfoSeq,
(SELECT USC_UNIT_NAME from idx_biz_jg_construction_info where "RECORD" = ibjui."RECORD" ORDER BY USC_DATE DESC limit 1) uscUnitName,
to_char((SELECT USC_DATE from idx_biz_jg_construction_info where "RECORD" = ibjui."RECORD" ORDER BY USC_DATE DESC limit 1), 'YYYY-MM') uscDate,
(select SEQUENCE_NBR from idx_biz_jg_inspection_detection_info where "RECORD" = ibjui."RECORD" ORDER BY INSPECT_DATE DESC limit 1) jySeq,
(select INSPECT_ORG_NAME from idx_biz_jg_inspection_detection_info where "RECORD" = ibjui."RECORD" ORDER BY INSPECT_DATE DESC limit 1) inspectOrgName,
(select INSPECT_CONCLUSION from idx_biz_jg_inspection_detection_info where "RECORD" = ibjui."RECORD" ORDER BY INSPECT_DATE DESC limit 1) inspectConclusion,
to_char((select NEXT_INSPECT_DATE from idx_biz_jg_inspection_detection_info where "RECORD" = ibjui."RECORD" ORDER BY INSPECT_DATE DESC limit 1), 'YYYY-MM-DD') nextInspectDate,
(select INSPECT_REPORT from idx_biz_jg_inspection_detection_info where "RECORD" = ibjui."RECORD" ORDER BY INSPECT_DATE DESC limit 1) inspectReport
lc.constructionInfoSeq,
lc.uscUnitName,
to_char(lc.uscDate, 'YYYY-MM-DD') AS uscDate,
li.jySeq,
li.inspectOrgName,
li.inspectOrgCode,
li.inspectConclusion,
li.inspectReport,
li.inspectType,
li.inspectStaff,
to_char(li.inspectDate, 'YYYY-MM-DD') AS inspectDate,
to_char(li.nextInspectDate, 'YYYY-MM-DD') AS nextInspectDate
FROM idx_biz_jg_use_info ibjui
LEFT JOIN idx_biz_jg_tech_params_pipeline ibjtpp ON ibjui.RECORD = ibjtpp.RECORD
LEFT JOIN idx_biz_jg_design_info ibjdi ON ibjui.RECORD = ibjdi.RECORD
LEFT JOIN latest_construction lc ON lc."RECORD" = ibjui."RECORD" AND lc.rn = 1
LEFT JOIN latest_inspection li ON li."RECORD" = ibjui."RECORD" AND li.rn = 1