3.Defect #3665
closed[คม Dashboard] ขอปรับยอดจำนวนประชากร และ จำนวนครัวเรือน และปรับยอดพ่นสารเคมี
0%
Description
จำนวนประชากร และ จำนวนครัวเรือน ขอปรับให้นับจากยอด transaction ของแต่ละหลังคาเรือน (ไม่ใช่ยอดที่เราคีย์ใน tbl_ms_household) และให้ใช้ filter date เพิ่มเหมือนกล่องข้างล่าง
WITH CombinedTransactions AS (
-- ดึง Household_ID และจำนวนคนจากทั้ง 3 ตารางมาต่อกัน
SELECT C3D_HOUSEHOLD_ID AS HOUSEHOLD_ID, C3D_PEOPLE_AMOUNT AS amount
FROM TBL_VC_C3H h join TBL_VC_C3D_ITN d on h.C3H_ID = d.C3H_ID
WHERE d.IS_VALID = '1' and h.C3H_ORG_ID = '2211150000' and h.C3H_ACT_DATE between '20250101' and '20251231'
UNION ALL
SELECT C3D_HOUSEHOLD_ID AS HOUSEHOLD_ID, C3D_PERSON_AMOUNT AS amount
FROM TBL_VC_C3H h join TBL_VC_C3D_NET d on h.C3H_ID = d.C3H_ID
WHERE d.IS_VALID = '1' and h.C3H_ORG_ID = '2211150000' and h.C3H_ACT_DATE between '20250101' and '20251231'
UNION ALL
SELECT C3D_HOUSEHOLD_ID AS HOUSEHOLD_ID, C3D_SPRAY_PEOPLE_AMOUNT AS amount
FROM TBL_VC_C3H h join TBL_VC_C3D_SPRAY d on h.C3H_ID = d.C3H_ID
WHERE d.IS_VALID = '1' and h.C3H_ORG_ID = '2211150000' and h.C3H_ACT_DATE between '20250101' and '20251231'
),
AggregatedData AS (
-- Group By เพื่อหาค่าที่มากที่สุดของแต่ละครัวเรือน
SELECT
HOUSEHOLD_ID,
MAX(amount) AS people_amount
FROM CombinedTransactions
GROUP BY HOUSEHOLD_ID
)
SELECT
a.HOUSEHOLD_ID,
ISNULL(a.people_amount, 0) AS people_amount
FROM AggregatedData a
Files
Subtasks
Related issues



