พฤษภาคม 2024
จ. อ. พ. พฤ. ศ. ส. อา.
« มี.ค.    
 12345
6789101112
13141516171819
20212223242526
2728293031  
พฤษภาคม 2024
จ. อ. พ. พฤ. ศ. ส. อา.
« มี.ค.    
 12345
6789101112
13141516171819
20212223242526
2728293031  

SQL จำนวนผู้ได้รับการคัดกรอง NCD อายุ 15-34 ปี แยกรายหมู่

SQL จำนวนผู้ได้รับการคัดกรอง NCD อายุ 15-34 ปี แยกรายหมู่

==================================================
SELECT village.villno AS หมู่
,village.villname AS บ้าน
,SUM(CASE WHEN person.sex = ‘1’ THEN 1 ELSE 0 END) AS ชาย
,SUM(CASE WHEN person.sex = ‘2’ THEN 1 ELSE 0 END) AS หญิง
,SUM(CASE WHEN person.sex = ‘1’OR person.sex = ‘2’ THEN 1 ELSE 0 END) AS รวม

FROM person
INNER JOIN house ON person.pcucodeperson = house.pcucode AND person.hcode = house.hcode
INNER JOIN village ON house.pcucode = village.pcucode AND house.villcode = village.villcode
WHERE
RIGHT(house.villcode,2)!= ’00’ #เป็นหมู่บ้านในเขตบริการ
AND CONCAT(person.pid,person.pcucodeperson)
NOT IN (SELECT CONCAT(persondeath.pid,persondeath.pcucodeperson)
FROM persondeath
WHERE deaddate <= CURDATE() or deaddate is not NULL)#ตัดคนตายออกไป
AND YEAR( FROM_DAYS( DATEDIFF( NOW( ) ,person.birth ) ) ) BETWEEN ’15’ AND ’34’ #อายุ15ปีถึง34ปี
AND person.pid IN
(select ncd_person_ncd_screen.pid from ncd_person_ncd_screen)
GROUP BY village.villcode;

แหล่งที่มา

MOPH.IT.Community

ชุมชน IT กระทรวงสาธารณสุข

SQL รายชื่อประชากรในเขตบริการที่ยังไม่ได้รับการคัดกรอง NCD

SELECT person.pid
,ctitle.titlename
,person.fname
,person.lname
,person.hnomoi
,person.mumoi
,ROUND(DATEDIFF(CURDATE(),birth)/365) as age_y
FROM person
INNER JOIN house ON person.pcucodeperson = house.pcucode AND person.hcode = house.hcode
INNER JOIN ctitle ON person.prename = ctitle.titlecode
LEFT JOIN ncd_person_ncd_screen ON person.pid = ncd_person_ncd_screen.pid
WHERE ncd_person_ncd_screen.pid IS NULL #ตัดคนที่คัดกรอง NCD แล้ว
AND CONCAT(person.pid,person.pcucodeperson)
NOT IN (SELECT CONCAT(persondeath.pid,persondeath.pcucodeperson)
FROM persondeath
WHERE deaddate <= CURDATE() or deaddate is not NULL)#ตัดคนตายออกไป
AND YEAR( FROM_DAYS( DATEDIFF( NOW( ) ,person.birth ) ) ) > 14 #อายุ15ปีขึ้นไป
AND RIGHT(house.villcode,2) != ’00’#เป็นหมู่บ้านในเขตบริการ

ใส่ความเห็น