ผู้เขียน หัวข้อ: เขียน code ดึงรายงานแล้วข้อมูลไม่ครบถ้วน  (อ่าน 4001 ครั้ง)

0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้

ออฟไลน์ that panom

  • Full Member
  • ***
  • กระทู้: 128
  • Respect: 0
    • ดูรายละเอียด
เขียน code ดึงรายงานผู้ป่วยที่ใช้ยา diazepam 2 mg จากตางราง opitemreceแล้ว ข้อมูลไม่ครบถ้วน เมื่อเปรียบเทียบการใช้ Custom serch ในการค้น ไม่แน่ใจว่าผมผมเขียนคำสั่งไม่ครบถ้วนหรือคลาดเคลื่อนหรือเปล่า ช่วยแนะนำด้วยครับ
 

ออฟไลน์ that panom

  • Full Member
  • ***
  • กระทู้: 128
  • Respect: 0
    • ดูรายละเอียด
Re: เขียน code ดึงรายงานแล้วข้อมูลไม่ครบถ้วน
« ตอบกลับ #1 เมื่อ: มีนาคม 02, 2007, 03:50:18 AM »
0
เอา โค้ด ที่เขียนมาให้ดูด้วยครับ
select
concat(pt.pname,pt.fname,"  ",pt.lname) as fullname,
concat(pt.addrpart," หมู่ ",pt.moopart," ต.",t3.name," อ.",t2.name," จ.",t1.name) as fulladdressname,
op.an,icode,qty,year(rxdate)-year(birthday) as age,rxdate,order_no,cid
from ovst ov
left outer join patient pt on pt.hn=ov.hn
left outer join thaiaddress t1 on t1.chwpart=pt.chwpart and
     t1.amppart="00" and t1.tmbpart="00"
left outer join thaiaddress t2 on t2.chwpart=pt.chwpart and
     t2.amppart=pt.amppart and t2.tmbpart="00"
left outer join thaiaddress t3 on t3.chwpart=pt.chwpart and
     t3.amppart=pt.amppart and t3.tmbpart=pt.tmbpart
left outer join opitemrece op on op.hn=ov.hn
where op.rxdate between "2007-02-01" and "2007-02-28"  and op. icode ="1480756"
group by order_no
order by rxdate

 

ออฟไลน์ naj

  • Hero Member
  • *****
  • กระทู้: 2,449
  • Respect: +10
    • ดูรายละเอียด
    • http://www.luangphopern-hospital.com
Re: เขียน code ดึงรายงานแล้วข้อมูลไม่ครบถ้วน
« ตอบกลับ #2 เมื่อ: มีนาคม 02, 2007, 04:08:52 AM »
0
ลองใช้ variable ช่วยในการทำรายงานซิครับ เนื่องการใช left join กันหลายๆตารางโอกาสที่รายงานผิดพลาดมีสูงครับ ถ้าไม่ตรวจสอบคำสั่งให้ดีก่อน :D
Yindee And Tan

doramon

  • บุคคลทั่วไป
Re: เขียน code ดึงรายงานแล้วข้อมูลไม่ครบถ้วน
« ตอบกลับ #3 เมื่อ: มีนาคม 02, 2007, 04:18:06 AM »
0
ตารางหลักที่จะใช้น่าจะเป็น opitemrec เป็นหลักครับ

select
concat(pt.pname,pt.fname,"  ",pt.lname) as fullname,
concat(pt.addrpart," หมู่ ",pt.moopart," ต.",t3.name," อ.",t2.name," จ.",t1.name) as fulladdressname,
op.an,icode,qty,year(rxdate)-year(birthday) as age,rxdate,order_no,cid
from ovst ov
left outer join patient pt on pt.hn=ov.hn
left outer join thaiaddress t1 on t1.chwpart=pt.chwpart and
     t1.amppart="00" and t1.tmbpart="00"
left outer join thaiaddress t2 on t2.chwpart=pt.chwpart and
     t2.amppart=pt.amppart and t2.tmbpart="00"
left outer join thaiaddress t3 on t3.chwpart=pt.chwpart and
     t3.amppart=pt.amppart and t3.tmbpart=pt.tmbpart
left outer join opitemrece op on op.hn=ov.hn
where op.rxdate between "2007-02-01" and "2007-02-28"  and op. icode ="1480756"
group by order_no
order by rxdate