BMS-HOSxP Community

HOSxP => Report Exchange => ข้อความที่เริ่มโดย: niyomstd ที่ ตุลาคม 08, 2010, 15:13:45 PM

หัวข้อ: สอบถามผู้รู้การดึงรายงานครับ ช้ามาก
เริ่มหัวข้อโดย: niyomstd ที่ ตุลาคม 08, 2010, 15:13:45 PM
สอบถามผู้รู้การดึงรายงานครับ ช้ามาก
ว่าสาเหตุเป็นเพราะอะไร
ขอบคุณครับ
select o.hn,concat(p.pname,p.fname,"  ",p.lname) as ptname,v.age_y,p.hometel,opd.bw,opd.height, '+
 ' dt.name,o.vstdate,o.nextdate '+
' from vn_stat v '+
' left outer join patient p on p.hn=v.hn  '+
' left outer join oapp o  on v.hn=o.hn    '+
' left outer join opitemrece op on v.hn=op.hn '+
' left outer join drugitems dt on op.icode=dt.icode '+
' left outer join opdscreen opd on opd.hn=v.hn'+
' where o.vstdate between "'+ds1+'" and "'+ds2+'" '+
' and op.icode in ("1490164","1490163","1510908","1490166","1490076","1510909", '+
' "1460503","1490139","1470510","1510907","1460283","1460285","1430501","1490175","1490173","1500044","1500046","1500050", '+
' "1460526","1460562","1460286","1470002","1470003","1470004","1490167") '+
' group by dt.name '+
' order by o.vstdate ,o.hn
หัวข้อ: Re: สอบถามผู้รู้การดึงรายงานครับ ช้ามาก
เริ่มหัวข้อโดย: ไม่เสียสละ ชัยชนะไม่เกิด ที่ ตุลาคม 08, 2010, 15:22:01 PM
เลือกช่วงข้อมูลเยอะไหมครับผมลอง 1 เดือนก็ไม่ช้านะครับ
หัวข้อ: Re: สอบถามผู้รู้การดึงรายงานครับ ช้ามาก
เริ่มหัวข้อโดย: niyomstd ที่ ตุลาคม 08, 2010, 15:24:12 PM
เลือกแค่ 1 เดือนเองครับ งงเหมือนกัน :) :) :)
หัวข้อ: Re: สอบถามผู้รู้การดึงรายงานครับ ช้ามาก
เริ่มหัวข้อโดย: ไม่เสียสละ ชัยชนะไม่เกิด ที่ ตุลาคม 08, 2010, 15:27:57 PM
ลองเอารายงานมาดูก่อนก็ได้ครับ เอา .cdsนะครับ
หัวข้อ: Re: สอบถามผู้รู้การดึงรายงานครับ ช้ามาก
เริ่มหัวข้อโดย: niyomstd ที่ ตุลาคม 08, 2010, 15:31:45 PM
จัดไปครับ
แก้ไข icode ให้ตรงกับ รพ.ของท่านด้วยนะครับ
หัวข้อ: Re: สอบถามผู้รู้การดึงรายงานครับ ช้ามาก
เริ่มหัวข้อโดย: ไม่เสียสละ ชัยชนะไม่เกิด ที่ ตุลาคม 08, 2010, 15:45:39 PM
ทำไมเงื่อไขรายงานแปลกๆครับรายงานที่ออกมาไม่ถูกต้องนะครับ
    แต่ที่สำคัญคือข้อมูลน่าจะเยอะเลยทำให้ช้าครับแต่ไม่ถึงกับช้ามาก
        ส่วนรายงานผมไม่ได้แก้ให้เพราะไม่รู้ขอบเขตรายงานครับ
หัวข้อ: Re: สอบถามผู้รู้การดึงรายงานครับ ช้ามาก
เริ่มหัวข้อโดย: niyomstd ที่ ตุลาคม 08, 2010, 15:48:43 PM
ข้อมูลไม่เยอะนะครับ 555+ แต่ไม่รู้ว่าผมเชื่อมผิดตรงไหน
 ??? ???
หัวข้อ: Re: สอบถามผู้รู้การดึงรายงานครับ ช้ามาก
เริ่มหัวข้อโดย: SrWooD ที่ ตุลาคม 08, 2010, 16:01:05 PM
vn_stat,oppp,opitemrece,opdscreen

น่าจะเชื่อมกันด้วย vn นะครับ

ลองเปลี่ยนมาเป็น vn แล้วลองใหม่สิครับ

และน่าจะเริ่มตารางแรกด้วย opitemrece

แล้วนำตารางอื่นๆ มา join นะครับ

เดาเอาครับ ยังไม่ได้โหลดรายงานมาดูนะครับ

sql คร่าวๆ ยังไม่ได้ดูอย่างจริงจัง

ลองปรับใช้ดูครับ

โค๊ด: SQL
  1. SELECT o.hn,concat(p.pname,p.fname,"  ",p.lname) AS ptname,v.age_y,p.hometel,opd.bw,opd.height,
  2.  dt.name,o.vstdate,o.nextdate
  3.  FROM opitemrece op
  4.  LEFT OUTER JOIN vn_stat v ON op.vn=v.vn
  5.  LEFT OUTER JOIN oapp o ON op.vn=o.vn
  6.  LEFT OUTER JOIN opdscreen opd ON opd.vn=op.vn
  7.  LEFT OUTER JOIN patient p ON p.hn=op.hn
  8.  LEFT OUTER JOIN drugitems dt ON op.icode=dt.icode
  9.  WHERE o.vstdate BETWEEN "2009-09-01" AND "2009-09-30"
  10.  AND op.icode IN ("1490164","1490163","1510908","1490166","1490076","1510909",
  11.  "1460503","1490139","1470510","1510907","1460283","1460285","1430501","1490175","1490173","1500044","1500046","1500050",
  12.  "1460526","1460562","1460286","1470002","1470003","1470004","1490167")
  13.  GROUP BY op.vn
  14.  ORDER BY o.vstdate ,o.hn
  15.  

 ;D ;D ;D
หัวข้อ: Re: สอบถามผู้รู้การดึงรายงานครับ ช้ามาก
เริ่มหัวข้อโดย: Khuad ที่ ตุลาคม 08, 2010, 16:04:22 PM
... ช้าเพราะเชื่อมตาราง vn_stat , oapp , opitemrece , opdscreen  ด้วย HN ครับ
    ลองดูแค่ตาราง opitemrece ใน 1 HN ก็อาจจะมีข้อมูลอยู่หลาย record แล้วครับ แล้วมาเชื่อมกับตารางอื่นๆ อีกข้อมูลจะทวีคูณไปไม่รู้ขนาดจะมากมายแค่ไหนครับ


    คือคำสั่งมันแปลกแบบที่ เอก บอกแหล่ะครับ

    ลองตามที่ อ.SrWooD บอกครับ ...  :D ....

หัวข้อ: Re: สอบถามผู้รู้การดึงรายงานครับ ช้ามาก
เริ่มหัวข้อโดย: ไม่เสียสละ ชัยชนะไม่เกิด ที่ ตุลาคม 08, 2010, 16:08:57 PM
สอบถามผู้รู้การดึงรายงานครับ ช้ามาก
ว่าสาเหตุเป็นเพราะอะไร
ขอบคุณครับ
select o.hn,concat(p.pname,p.fname,"  ",p.lname) as ptname,v.age_y,p.hometel,opd.bw,opd.height, '+
 ' dt.name,o.vstdate,o.nextdate '+
' from vn_stat v '+
' left outer join patient p on p.hn=v.hn  '+
' left outer join oapp o  on v.hn=o.hn    '+
' left outer join opitemrece op on v.hn=op.hn '+
' left outer join drugitems dt on op.icode=dt.icode '+
' left outer join opdscreen opd on opd.hn=v.hn'+
' where o.vstdate between "'+ds1+'" and "'+ds2+'" '+
' and op.icode in ("1490164","1490163","1510908","1490166","1490076","1510909", '+
' "1460503","1490139","1470510","1510907","1460283","1460285","1430501","1490175","1490173","1500044","1500046","1500050", '+
' "1460526","1460562","1460286","1470002","1470003","1470004","1490167") '+
' group by dt.name '+
' order by o.vstdate ,o.hn

เท่าที่ดูนะครับ 1ไม่ทราบว่าเอาตารางนัดมาเพื่ออะไรครับ
                     2group by dt.name มันก็จะได้ชื่อคนไข้คนเดียวเท่านั้นครับ
                     3 opitemrece ทำไม่ใช้ HN ครับนานแน่ทำไมไม่ใช้ VN ครับ
                     4 ช่วงวันที่ทำไมใช้ของตารางนัดครับ
ถ้าผมวิเคราะห์ผิดขออภัยด้วยนะครับ
หัวข้อ: Re: สอบถามผู้รู้การดึงรายงานครับ ช้ามาก
เริ่มหัวข้อโดย: niyomstd ที่ ตุลาคม 08, 2010, 16:14:01 PM
ขอบคุณ อ ทุก ท่าน ครับ
อิอิ เริ่มจากตาราง opitemrece แล้วนำตารางอื่นมา join
ทำให้ได้ข้อมูลเร็วขั้น
 ;D ;D ;D
หัวข้อ: Re: สอบถามผู้รู้การดึงรายงานครับ ช้ามาก
เริ่มหัวข้อโดย: chk ที่ ตุลาคม 08, 2010, 16:56:23 PM
 ;D  ทำดี ทำให้ ยินดีด้วยนะขอรับ  8)