BMS-HOSxP Community
HOSxP => แจ้งปัญหา / ขอความช่วยเหลือ => ข้อความที่เริ่มโดย: Terminator2015 ที่ สิงหาคม 04, 2008, 14:39:51 PM
-
:-[ผมตรวจสอบข้อมูลใน Patient มี CID ซ้ำเยอะพอสมควรครับ คิดว่าจะง่าย แต่ผมใช้คำสั่งไม่ถูกครับ ไม่เอาเยอะครับ มี HN,CID,Fname,Lname แค่นี้ก็พอครับ ที่มี CID เหมือนกันครับ อยากรู้ว่าสะกดชื่อ สกุลอย่างไรบ้าง ฝากท่าน อ.ทั้งหลาย ด้วยนะครับ ขอบคุณครับ
-
select cid, hn, fname, lname , count(cid)
from patient
group by cid
having count(cid)>'1'
order by fname, lname
ลองดูครับ ;)
-
...คำสั่งที่ pop_hosxp ให้ไว้ อาจดูเปรียบเทียบยาก เพราะจะไม่เห็นว่า cid ที่ซ้ำกัน คือใครบ้าง(จะเห็นรายละเอียดแค่คนเดียว) ....
...ลองคำสั่งข้างล่างดูเป็นอีกแนวทางนึงนะครับ
...จะเห็นว่า cid ที่ซ้ำกันนั้น มีใคร หรือ HN อะไรบ้าง(อาจได้ประโยชน์เรื่อง Pt ที่มี HN ซ้ำด้วยครับ)...
select p.cid, p.hn, p.fname, p.lname
from patient p, patient p2
where p.cid = p2.cid
and p.hn <> p2.hn
and p.cid <> '1111111111111'
and p.cid <> ''
order by p.cid, p.hn
...แต่ถ้าในตาราง Patient มีข้อมูล HN ที่ cid ซ้ำกันมากกว่า 2 HN
...กลุ่ม record ของ cid นั้น ก็จะมีมากขึ้นด้วยครับ ลักษณะจับคู่ในกลุ่มโดยไม่จับคู่กับตัวเองนะครับ (เช่น cid ซ้ำ 3 HN จะมี 6 record,ซ้ำ 4 HN จะมี 12 record)
...ดังนั้นอย่าเผลอลบตรง and p.cid <> '1111111111111' ออกนะครับ เพราะถ้ามี Pt ที่เราใส่ cid เป็น 1111111111111 เยอะๆ ก็จะได้กลุ่มข้อมูลที่ cid ที่เป็น 1111111111111 จำนวนมาก(จริงๆ ขอบอก)เลยนะครับ... :D....
-
ขอบคุณหลาย ๆ ครับ อ. Khuad ;D เมื่อวานก็ลองทำ อยากได้แบบอ. Khuad นี่แหละ แต่มันไม่ออกซักที ก็เลยได้คำสั่งอย่างที่เห็น ;D
-
ขอบคุณท่าน อ.Khuad มากๆครับ นี่ล่ะที่ต้องการ เพราะลองทีไรก็ออกคนเดียว :D
-
ขอบคุณมากครับ กำลังต้องการอยู่พอดี ;)
-
ขอบคุณครับ อยากได้อยู่เหมือนกัน
-
ทดสอบใหม่ดูนะครับ แก้ record ที่ซ้ำกันออกไป
select distinct p.cid, p.hn,CONCAT(p.pname,p.fname,' ',p.lname) as name,
p.birthday,p.fathername,p.mathername,p.hometel
from patient p, patient p2
where p.cid = p2.cid
and p.hn <> p2.hn
and (p.cid <> '1111111111111' and p.cid <> '2222222222222' and p.cid <> '3333333333333' and
p.cid <> '4444444444444' and p.cid <> '5555555555555' and p.cid <> '6666666666666' and
p.cid <> '7777777777777' and p.cid <> '8888888888888' and p.cid <> '9999999999999' and
p.cid <> '0000000000000')
and length(p.cid)=13
order by p.cid, p.hn