BMS-HOSxP Community

HOSxP => แจ้งปัญหา / ขอความช่วยเหลือ => ข้อความที่เริ่มโดย: panus_t ที่ มกราคม 20, 2012, 12:14:43 PM

หัวข้อ: ผมทำรายงานแล้วข้อมูลซ้ำกันครับ มาตรวจสอบดูปรากฏว่า..
เริ่มหัวข้อโดย: panus_t ที่ มกราคม 20, 2012, 12:14:43 PM
ผมทำรายงานแล้วข้อมูลซ้ำกันครับ มาตรวจสอบดูปรากฏว่า hn ซ้ำที่ตาราง ptcardno  แต่ ptcardno.cardno ต่างกัน เนื่องจากห้องบัตรใส่ทั้งเลขบัตรประชาชน และเลขต่างด้าวด้วย
เขาบอกว่าถ้าไม่ใส่จะ Error save ไม่ได้ ผมเลยลองเข้าไปลบช่องบัตรประชาชน แล้วบันทึกปรากฏว่า Error ดังรูปที่แนบมาครับ
กรณีนี้จะแก้ไขที่ Code ได้หรือเปล่าครับ ลองใส่ group by vn.hn แล้วมันเลือกตัวแรก ซึ่ง cardno ผิด

select vn.vstdate,vn.hn,vn.income,vn.uc_money,vn.paid_money,vn.remain_money,concat(pt.pname,pt.fname,"   ",pt.lname,"  ",ptc.cardno) as pt_name
from vn_stat vn
left outer join patient pt  on pt.hn=vn.hn
left outer join ptcardno ptc on ptc.hn=vn.hn
where vn.pttype="13" and vn.vstdate between '2011-12-01' and '2011-12-31' and vn.remain_money<>0
order by vn.vstdate asc
หัวข้อ: Re: ผมทำรายงานแล้วข้อมูลซ้ำกันครับ มาตรวจสอบดูปรากฏว่า..
เริ่มหัวข้อโดย: วีระวัฒน์ (เอก) ที่ มกราคม 20, 2012, 12:27:55 PM
สำหรับเลขต่างด้าว

select vn.vstdate,vn.hn,vn.income,vn.uc_money,vn.paid_money,vn.remain_money,concat(pt.pname,pt.fname,"   ",pt.lname,"  ",ptc.cardno) as pt_name
from vn_stat vn
left outer join patient pt  on pt.hn=vn.hn
left outer join ptcardno ptc on ptc.hn=vn.hn and ptc.cardtype="02"
where vn.pttype="13" and vn.vstdate between '2011-12-01' and '2011-12-31' and vn.remain_money<>0
order by vn.vstdate asc



ต้องลงเลขประชาชน และเลขต่างด้าวเป็นเลขเดียวกันครับ แต่ format ต่างกันเท่านั้น