BMS-HOSxP Community

HOSxP => Report Exchange => ข้อความที่เริ่มโดย: yuthhos ที่ พฤษภาคม 07, 2010, 13:54:11 PM

หัวข้อ: รายงานสุขภาพจิต
เริ่มหัวข้อโดย: yuthhos ที่ พฤษภาคม 07, 2010, 13:54:11 PM
ขอความช่วยเหลือครับ
รายงานสุขภาพจิต  ดึงยอดการให้บริการผู้ป่วยโรคจิตตามรหัสโรค ในตาราง VN_STAT แต่ตอนนี้ดึงได้เฉพาะในฟิ;ด์
ของ pdx อยากได้ในฟิวล์ของ  dx0,dx1,dx2,dx3,dx4,dx5  เพราะบางทีรหัสโรคจะอยู่ในฟิวด์ของ dx 
  ต้องใช้คำสั่งยังไง ครับ icd10 =f00-f299 ครับ
คำสั่งที่ใช้อยู่เป็นดังนี้ครับ   Value :=GetSQLStringData('select count(distinct(hn)) from vn_stat '
+' where pdx between "F00" and "F299" and vstdate between "'+ds1+'" and "'+ds2+'" ');

เวอร์ชั่น 3.53.3.8 SQL 5.1.30

                          ขอบคุณล่วงหน้าครับ
หัวข้อ: Re: รายงานสุขภาพจิต
เริ่มหัวข้อโดย: nahos ที่ พฤษภาคม 07, 2010, 15:49:54 PM
ประมาณนี้มั้ง

select count(ov.vn) as cc
from  vn_stat ov
where ( (ov.pdx like "F200%")
 or (ov.dx0 like "F200%")
 or (ov.dx1 like "F200%")
 or (ov.dx2 like "F200%")
 or (ov.dx3 like "F200%")
 or (ov.dx4 like "F200%")
 or (ov.dx5 like "F200%")
)
หัวข้อ: Re: รายงานสุขภาพจิต
เริ่มหัวข้อโดย: udomchok ที่ พฤษภาคม 08, 2010, 10:33:40 AM
ขอความช่วยเหลือครับ
รายงานสุขภาพจิต  ดึงยอดการให้บริการผู้ป่วยโรคจิตตามรหัสโรค ในตาราง VN_STAT แต่ตอนนี้ดึงได้เฉพาะในฟิ;ด์
ของ pdx อยากได้ในฟิวล์ของ  dx0,dx1,dx2,dx3,dx4,dx5  เพราะบางทีรหัสโรคจะอยู่ในฟิวด์ของ dx 
  ต้องใช้คำสั่งยังไง ครับ icd10 =f00-f299 ครับ
คำสั่งที่ใช้อยู่เป็นดังนี้ครับ   Value :=GetSQLStringData('select count(distinct(hn)) from vn_stat '
+' where pdx between "F00" and "F299" and vstdate between "'+ds1+'" and "'+ds2+'" ');

เวอร์ชั่น 3.53.3.8 SQL 5.1.30

                          ขอบคุณล่วงหน้าครับ
ผมชอบใช้ ovstdiag ครับ เพราะหาได้จากทุกตำแหน่งของการวินิจฉัย ไม่ว่าจะเป็นวินิจฉัยหลักหรือรองใดๆ หากมีการลงวินิจฉัยมากกว่า 7 ก็สามารถดึงมาได้ ถ้าใช้ vn_stat จะได้แค่ 7 รายการ
select icd10 from ovstdiag where icd10 between "F00" and "F299" and vstdate between "2010-01-01" and "2010-01-31"