BMS-HOSxP Community

HOSxP => Report Exchange => ข้อความที่เริ่มโดย: udomchok ที่ มกราคม 26, 2010, 15:02:39 PM

หัวข้อ: รายงานผู้ป่วยที่มี CID ซ้ำกัน
เริ่มหัวข้อโดย: udomchok ที่ มกราคม 26, 2010, 15:02:39 PM
เคยเห็นของคนอื่นทำไว้แล้ว แต่ท่าน atit ถามมาให้ลองทำให้หน่อย พยายามอยู่หลายวัน กับวิธีการแบบเดิม ๆ (SQL แบบที่ใช้ใน MS Access) แต่ไม่ work ซะที
เมื่อคืนลองทำรายงานผู้ป่วย HIV ที่มา ร.พ. ตั้งแต่ 2 ครั้งขึ้นไป และอายุมากกว่า 15 ปี เสร็จ ก็เลยใช้ idea เดียวกันในการทำรายงานตัวนี้ (เดี๋ยวจะบอกขั้นตอนว่าคิดมาอย่้างไรบ้าง) แต่กลับพบปัญหาที่ไม่สามารถแก้ไขได้ด้วยวิธีการเดียวกับ report HIV ที่ visit มากกว่า 1 ครั้ง และอายุมากกว่า 15 ปี
เช้านี้มาหาวิธีการต่อว่าจะทำอย่างไรดี เล่นซะครึ่งวันกว่าจะได้ออกมาอย่างที่ต้องการ
ใครเอาไปแล้วอย่ามึนนะครับ select ซ้อน select ซ้อน select อีกที
 ;D ;D ;D ;D
หัวข้อ: Re: รายงานผู้ป่วยที่มี CID ซ้ำกัน
เริ่มหัวข้อโดย: udomchok ที่ มกราคม 26, 2010, 15:14:05 PM
มาเล่าให้ฟังต่อครับ
แนวคิดในการเขียน sql ของผมก็คือ
(เอาเรื่องผู้ป่วย HIV มา ร.พ.มากกว่า 1 ครั้ง และอายุมากกว่า 15 ปีก่อนนะครับ)
อันดับแรกก็คือดึงรายการผู้ป่วยที่มี diag ตามที่ต้องการก่อน โดยใช้ ovstdiag ตามช่วงเวลาที่กำหนด
ก็จะได้ sql ประมาณนี้
select p.hn,concat(p.pname,p.fname," ",p.lname) as ptname,p.sex,v.age_y,p.birthday,count(v.vn) as times
from vn_stat v
join ovstdiag od on od.vn=v.vn
join patient p on p.hn=v.hn
where ((od.icd10 between "B20" and "B24") or od.icd10 like "Z21" or od.icd10 like "R75") and (v.vstdate between "'+ds1+'" and "'+ds2+'") and v.age_y > 15
group by hn
order by p.hn,v.vn
ก็จะได้ว่าผู้ป่วยที่ต้องกามา ร.พ.กี่ครั้งในช่วงเวลาที่กำหนด

ต่อมาเราก็มาเลือกเอาเฉพาะรายที่มีจำนวนครั้งของการมา (times) มากกว่า 1 ก็ต้องเป็นอีก sql หนึ่งซ้อนอยู่ข้างนอกพร้อมเงื่อนไข

select hn,ptname,sex,age_y,birthday,times from [sqlเดิม] where times > 1
โดยที่ [sqlเดิม] คือ sql จากข้างบนใช่ไหมครับ

ดังนั้น sql ที่สมบูรณ์ของผมก็จะเป็นแบบนี้ครับ
select hn,ptname,sex,age_y,birthday,times from (select p.hn,concat(p.pname,p.fname," ",p.lname) as ptname,p.sex,v.age_y,p.birthday,count(v.vn) as times
from vn_stat v
join ovstdiag od on od.vn=v.vn
join patient p on p.hn=v.hn
where ((od.icd10 between "B20" and "B24") or od.icd10 like "Z21" or od.icd10 like "R75") and (v.vstdate between "'+ds1+'" and "'+ds2+'") and v.age_y > 15
group by hn
order by p.hn,v.vn) as temp
where times > 1');

คราวนี้คงงงว่า as temp มาจากไหน ก็เพือให้ sql ในส่วนสีแดงมีที่อยู่ก็เลยต้องอ่านขอ้มูลไปเก็บใน temp ก่อนไงครับ
 ;D ;D ;D ;D

อันนี้แบบเบาะ ๆ DuplicateCID_Patient ยากกว่านี้อีกหน่อยหนึ่ง

ใครเขียนสั้น ๆ อย่าว่ากันนะครับ
ผมไล่ทีละ step ว่าจะได้อะไรออกมาบ้าง แล้วจึงนำมารวมกัน
ลองไปแกะ sql ของ DuplicateCID_Patient นะครับ

ปล.ไม่ใช่เทพ ;D ;D ;D ;D ;D
หัวข้อ: Re: รายงานผู้ป่วยที่มี CID ซ้ำกัน
เริ่มหัวข้อโดย: kookkaija ที่ มกราคม 26, 2010, 16:22:47 PM
ขอบคุณมากครับ ขอเอาไปใช้ด้วยคนครับ
หัวข้อ: Re: รายงานผู้ป่วยที่มี CID ซ้ำกัน
เริ่มหัวข้อโดย: udomchok ที่ มกราคม 26, 2010, 17:00:48 PM
เดี๋ยวจะตามมาด้วยบ้านและคนที่ซ้ำกัน ในฝั่งเชิงรุก
หัวข้อ: Re: รายงานผู้ป่วยที่มี CID ซ้ำกัน
เริ่มหัวข้อโดย: naj ที่ มกราคม 26, 2010, 18:36:44 PM
เดี๋ยวจะตามมาด้วยบ้านและคนที่ซ้ำกัน ในฝั่งเชิงรุก
รูปแบบ SQL ที่พี่โก้เขียน ผมยังไม่เคยลอง ความรู้ใหม่ ว่า MySQL สามารถเขียนแบบนี้ได้ด้วยครับ

 พีโก้ จัดแจ่ม จริงๆๆ ยิงมาเป็นชุด
ขอบคุณครับ
หัวข้อ: Re: รายงานผู้ป่วยที่มี CID ซ้ำกัน
เริ่มหัวข้อโดย: manoi ที่ มกราคม 26, 2010, 19:47:56 PM
โอ้ว เทพ.  :)
หัวข้อ: Re: รายงานผู้ป่วยที่มี CID ซ้ำกัน
เริ่มหัวข้อโดย: udomchok ที่ มกราคม 26, 2010, 20:01:21 PM
โอ้ว เทพ.  :)
เทพ 'ไรครับจารย์
เทพ เทียนชัย (ตายไปแล้ว)
เพท โพธิ์งาม (อันนี้ยังอยู่)
เทพ เ..ือก  ;D ;D ;D ;D ;D

แหม...บอกแล้วว่าไม่เทพครับ

รูปแบบ SQL ที่พี่โก้เขียน ผมยังไม่เคยลอง ความรู้ใหม่ ว่า MySQL สามารถเขียนแบบนี้ได้ด้วยครับ
พี่โก้ จัดแจ่ม จริงๆๆ ยิงมาเป็นชุด
ขอบคุณครับ
ก็เขียนตามความรู้สึก ว่าอยากได้อะไร แต่ละขั้นต้องได้อะไรออกมา

แต่ไม่รู้ว่าที่ถูกต้องควรจะเป็นอย่างไร ว่า อ.mn ชี้แนะด้วยครับ
หัวข้อ: Re: รายงานผู้ป่วยที่มี CID ซ้ำกัน
เริ่มหัวข้อโดย: manoi ที่ มกราคม 26, 2010, 20:04:15 PM
ไม่รู้ว่าจะชี้แน่ะอย่างไร เพราะผมยังเขียนได้ไม่เท่าพี่โก้เลยครับ  :D
หัวข้อ: Re: รายงานผู้ป่วยที่มี CID ซ้ำกัน
เริ่มหัวข้อโดย: Terminator2015 ที่ มกราคม 26, 2010, 20:54:23 PM
 ;D ขอบคุณพี่โก้มากครับ

- ขอเพิ่มเติมนิดหน่อยครับ ถ้าไม่ยากเกินไป แฮะๆ   
เพิ่มเงื่อนไข ไม่เอา cid ว่าง และ ไม่เอาที่มี 0 นำหน้า และ cid ที่ไม่เท่ากับ 1111111111111

จะสุดยอดๆๆๆๆมากๆๆๆ เลยครับ
หัวข้อ: Re: รายงานผู้ป่วยที่มี CID ซ้ำกัน
เริ่มหัวข้อโดย: udomchok ที่ มกราคม 26, 2010, 21:10:41 PM
;D ขอบคุณพี่โก้มากครับ

- ขอเพิ่มเติมนิดหน่อยครับ ถ้าไม่ยากเกินไป แฮะๆ   
เพิ่มเงื่อนไข ไม่เอา cid ว่าง และ ไม่เอาที่มี 0 นำหน้า และ cid ที่ไม่เท่ากับ 1111111111111

จะสุดยอดๆๆๆๆมากๆๆๆ เลยครับ
cid ว่าง ไม่เอา อันนี้อยู่ในตัวนี้แล้วครับ
0 นำหน้า ไม่เอา ไม่ได้ครับ ของผมพบว่ามีต่างด้าวเลขซ้ำซ้อน (ไม่รู้ห้องบัตรทำอย่างไร ซ้ำเต็มไปหมด)
1111111111111 ไม่เอา ได้ครับ เดี๋ยวกรองออกให้
หัวข้อ: Re: รายงานผู้ป่วยที่มี CID ซ้ำกัน
เริ่มหัวข้อโดย: jdadmin1 ที่ มกราคม 26, 2010, 21:19:37 PM
อ้างถึง
cid ว่าง ไม่เอา อันนี้อยู่ในตัวนี้แล้วครับ
0 นำหน้า ไม่เอา ไม่ได้ครับ ของผมพบว่ามีต่างด้าวเลขซ้ำซ้อน (ไม่รู้ห้องบัตรทำอย่างไร ซ้ำเต็มไปหมด)
1111111111111 ไม่เอา ได้ครับ เดี๋ยวกรองออกให้
;D ;D ;D หัวอกเดียวกันครับป๋าโก้ ต่างด้าวนี่ไม่รู้จะจัดระบบอย่างไร สงสัยต้องปรึกษาอ.อ๊อด(เทพพม่า) กำลังหาทางออกเรื่องนี้อยู่เหมือนกันครับ พี่ terminator ไม่อยากได้เคสต่างด้าวเยอะ ๆ เอาไว้ปวดหัวบ้างหรือครับ ;D ;D ;D
หัวข้อ: Re: รายงานผู้ป่วยที่มี CID ซ้ำกัน
เริ่มหัวข้อโดย: asawincyber ที่ มกราคม 26, 2010, 21:48:55 PM
เผอิญ จังหวัด พี่ terminator เขาไม่ได้ติดแนวชายแดน คงไม่ค่อยมี พม่า สงสัย รอปรึกษาอ.อ๊อด(เทพพม่า)  ช่วยให้คำแนะนำ
หัวข้อ: Re: รายงานผู้ป่วยที่มี CID ซ้ำกัน
เริ่มหัวข้อโดย: Terminator2015 ที่ มกราคม 26, 2010, 22:24:30 PM
 ??? ทำไมของผมมี cid ว่าง ออกมาด้วยครับ หน้าแรกเลย เยอะด้วย แฮะๆ
หัวข้อ: Re: รายงานผู้ป่วยที่มี CID ซ้ำกัน
เริ่มหัวข้อโดย: udomchok ที่ มกราคม 26, 2010, 22:35:07 PM
??? ทำไมของผมมี cid ว่าง ออกมาด้วยครับ หน้าแรกเลย เยอะด้วย แฮะๆ
ผมใช้ cid is not null แสดงว่าของท่าน terminator ไม่เป็น null หรือเปล่าครับ
เดี๋ยวจะลองเปลี่ยนเป็น length(trim(cid))>0 ให้ทดสอบนะครับ
หัวข้อ: Re: รายงานผู้ป่วยที่มี CID ซ้ำกัน
เริ่มหัวข้อโดย: udomchok ที่ มกราคม 26, 2010, 22:43:22 PM
สำหรับท่าน Terminator นะครับ ผมยังไม่ได้ทดสอบกับข้อมูลจริง เพราะใช้เครื่องที่บ้าน (ไม่มีข้อมูล)
ลองดูว่า cid ว่าง ๆ ยังออกมาอีกไหม
แต่ 0 นำผมยังไม่ได้เอาออกให้นะครับ
หัวข้อ: Re: รายงานผู้ป่วยที่มี CID ซ้ำกัน
เริ่มหัวข้อโดย: udomchok ที่ มกราคม 26, 2010, 22:52:54 PM
อันนี้แบบมี drop down ให้เลือกว่าจะเอา 1111111111111 มาแสดงหรือไม่
ถ้าไม่เลือกจะแสดง 11111111111 ด้วย
หัวข้อ: Re: รายงานผู้ป่วยที่มี CID ซ้ำกัน
เริ่มหัวข้อโดย: Terminator2015 ที่ มกราคม 27, 2010, 00:13:28 AM
สำหรับท่าน Terminator นะครับ ผมยังไม่ได้ทดสอบกับข้อมูลจริง เพราะใช้เครื่องที่บ้าน (ไม่มีข้อมูล)
ลองดูว่า cid ว่าง ๆ ยังออกมาอีกไหม
แต่ 0 นำผมยังไม่ได้เอาออกให้นะครับ

 ;Dขอบคุณพี่โก้มากครับ ไม่มี cid ว่างออกมาแล้วครับ
หัวข้อ: Re: รายงานผู้ป่วยที่มี CID ซ้ำกัน
เริ่มหัวข้อโดย: asawincyber ที่ มกราคม 27, 2010, 07:37:01 AM
สุดยอด อ.โก้  ;D ;D
หัวข้อ: Re: รายงานผู้ป่วยที่มี CID ซ้ำกัน
เริ่มหัวข้อโดย: Bond_007 ที่ มกราคม 27, 2010, 08:10:37 AM
ขอบคุณครับ
หัวข้อ: Re: รายงานผู้ป่วยที่มี CID ซ้ำกัน
เริ่มหัวข้อโดย: por ที่ มกราคม 27, 2010, 08:52:44 AM
สุดยอดครับ ท่าน อ.เทพโก้

ของผมแบบง่ายๆครับ ขอเอาของเทพ อ.โก้ไปทดสอบด้วยนะครับ

ผมตรวจสอบกับ NHSO UCSearch Client ใน HOSxP
หัวข้อ: Re: รายงานผู้ป่วยที่มี CID ซ้ำกัน
เริ่มหัวข้อโดย: udomchok ที่ มกราคม 27, 2010, 22:15:30 PM
สุดยอดครับ ท่าน อ.เทพโก้

ของผมแบบง่ายๆครับ ขอเอาของเทพ อ.โก้ไปทดสอบด้วยนะครับ

ผมตรวจสอบกับ NHSO UCSearch Client ใน HOSxP
ทดสอบแล้ว ผลออกมาเป็นอย่างไรบ้าง บอกด้วยนะครับ  ;D ;D
หัวข้อ: Re: รายงานผู้ป่วยที่มี CID ซ้ำกัน
เริ่มหัวข้อโดย: udomchok ที่ มกราคม 27, 2010, 22:22:05 PM
ผมเอาของท่านปอมาทดสอบแล้วครับ เห็นความแตกต่างกับของผมแล้วครับ  ;D ;D ;D ;D

ใครว่าง ๆ ลองเอาไปทดสอบ แล้วมาเฉลยกันหน่อยครับ
หัวข้อ: Re: รายงานผู้ป่วยที่มี CID ซ้ำกัน
เริ่มหัวข้อโดย: mr.poum ที่ มกราคม 27, 2010, 22:45:47 PM
ขอบคุณมั่กๆครับ ...
หัวข้อ: Re: รายงานผู้ป่วยที่มี CID ซ้ำกัน
เริ่มหัวข้อโดย: por ที่ มกราคม 28, 2010, 10:23:35 AM
ผมเอาของท่านปอมาทดสอบแล้วครับ เห็นความแตกต่างกับของผมแล้วครับ  ;D ;D ;D ;D

ใครว่าง ๆ ลองเอาไปทดสอบ แล้วมาเฉลยกันหน่อยครับ

มีความแตกต่างอย่างไรบ้างครับ ท่านเทพ อ.ภก. อุดมโชค ครับ

หัวข้อ: Re: รายงานผู้ป่วยที่มี CID ซ้ำกัน
เริ่มหัวข้อโดย: Khuad ที่ มกราคม 28, 2010, 12:11:49 PM

โอ้ว เทพ.  :)



... โอ้ว เทพ .. โอ้ว เทพ .. โอ้ว เทพ ...  ;D  ;D  ;D ...

... สุดยอดครับพี่โก้ ...  :D ...
หัวข้อ: Re: รายงานผู้ป่วยที่มี CID ซ้ำกัน
เริ่มหัวข้อโดย: udomchok ที่ มกราคม 28, 2010, 20:17:21 PM
ผมเอาของท่านปอมาทดสอบแล้วครับ เห็นความแตกต่างกับของผมแล้วครับ  ;D ;D ;D ;D

ใครว่าง ๆ ลองเอาไปทดสอบ แล้วมาเฉลยกันหน่อยครับ

มีความแตกต่างอย่างไรบ้างครับ ท่านเทพ อ.ภก. อุดมโชค ครับ


ท่านปอเทพกว่าเห็น ๆ มี สปสช. มาด้วย  ;) ;) ;) ;)
หัวข้อ: Re: รายงานผู้ป่วยที่มี CID ซ้ำกัน
เริ่มหัวข้อโดย: A ROON CHAI ที่ มกราคม 29, 2010, 10:56:36 AM
สุดยอดครับ ท่าน อ.เทพโก้

ของผมแบบง่ายๆครับ ขอเอาของเทพ อ.โก้ไปทดสอบด้วยนะครับ

ผมตรวจสอบกับ NHSO UCSearch Client ใน HOSxP

person CID ซ้ำ  อ.por ช่วยเพิ่มที่อยู่ของทั้งสอง HN ให้ด้วยครับ

จะนำข้อมูลไปแก้ไขได้เร็วขึ้น ไม่ต้องเข้าไปดูที่อยู่อีกรอบครับ

ขอบคุณครับ
หัวข้อ: Re: รายงานผู้ป่วยที่มี CID ซ้ำกัน
เริ่มหัวข้อโดย: por ที่ มกราคม 29, 2010, 11:21:46 AM
ครับ เดี่ยวจัดให้ครับ
หัวข้อ: Re: รายงานผู้ป่วยที่มี CID ซ้ำกัน
เริ่มหัวข้อโดย: A ROON CHAI ที่ กุมภาพันธ์ 01, 2010, 11:31:38 AM
ขอบคุณครับ...รอครับ ;D ;D
หัวข้อ: Re: รายงานผู้ป่วยที่มี CID ซ้ำกัน
เริ่มหัวข้อโดย: naydekdee ที่ กุมภาพันธ์ 13, 2010, 14:59:40 PM
สุดยอดคับ !  +  ต้องเอามาใช้ซะแล้ว คับ   
หัวข้อ: Re: รายงานผู้ป่วยที่มี CID ซ้ำกัน
เริ่มหัวข้อโดย: E-Hos ที่ กุมภาพันธ์ 18, 2010, 16:04:26 PM
ขอบคุณครับ...รอครับ ;D ;D

รอด้วยความหวังครับ เพราะตอนนี้ HN ปาเข้าไป ครึ่งแสนแล้วครับ  :'( :'( :'(
ทั้งที่ มีแค่ 30000 กว่าคนเองครับ โดนPatient link เล่นงาน  :-[ :-[ :-[ :-[
หัวข้อ: Re: รายงานผู้ป่วยที่มี CID ซ้ำกัน
เริ่มหัวข้อโดย: bacho_hospital ที่ กุมภาพันธ์ 19, 2010, 09:21:19 AM
ขอบคุณครับ...
หัวข้อ: Re: รายงานผู้ป่วยที่มี CID ซ้ำกัน
เริ่มหัวข้อโดย: onlinelp ที่ กุมภาพันธ์ 19, 2010, 09:36:11 AM
 ??? ??? ???
เห็นแล้วเป็นอัน...งง....อึ่ง....มึน
 :D