ผมเคยpost ขอไป ลองดูคำสั่งที่คุณ Khuad ได้แนะนำผม
... ทีนี้ในรายงานตรงส่วนของ DM อย่างเดียว
ถ้าหมายถึงคนที่เป็นเบาหวานอย่างเดียว ไม่ได้เป็นความดันร่วมด้วย คงใช้คำสั่งแบบในรายงานที่แนบไว้ไม่ได้ครับ ข้อมูลจะผิดพลาด เพราะจะนับคนที่เป็นทั้งเบาหวานและความดันมารวมด้วย ในกรณีของ HT อย่างเดียว ก็เป็นไปในทางเดียวกันครับ ...
ในส่วนของ DM อย่างเดียว ลองใช้คำสั่งเป็น
Value := GetSQLIntegerData('select count(pc1.person_id) as cc '+
' from person_chronic pc1,person p '+
' where pc1.clinic = "001" '+
' and pc1.person_id = p.person_id '+
' and p.village_id = "'+DBPipeline['village_id']+'" '+
' and p.house_regist_type_id in ("1","3")' +
' and p.death = "N" '+
' and pc1.person_id not in ('+GetSQLSubQueryData('select pc2.person_id '+
' from person_chronic pc2 where pc2.clinic = "002" ')+') ');
และในส่วนของ HT อย่างเดียว ลองใช้คำสั่งเป็น
Value := GetSQLIntegerData('select count(pc1.person_id) as cc '+
' from person_chronic pc1,person p '+
' where pc1.clinic = "002" '+
' and pc1.person_id = p.person_id '+
' and p.village_id = "'+DBPipeline['village_id']+'" '+
' and p.house_regist_type_id in ("1","3")' +
' and p.death = "N" '+
' and pc1.person_id not in ('+GetSQLSubQueryData('select pc2.person_id '+
' from person_chronic pc2 where pc2.clinic = "001" ')+') ');
ตรงผลรวมก็ตัดตรง
' and p.village_id = "'+DBPipeline['village_id']+'" '+
ออกไปเช่นกันครับ
... ลองทดสอบดูนะครับ .... ...
http://hosxp.net/index.php?option=com_smf&Itemid=28&topic=18424.0