BMS-HOSxP Community

HOSxP => การเขียน SQL Script => ข้อความที่เริ่มโดย: teerapun_top ที่ พฤศจิกายน 16, 2010, 19:50:21 PM

หัวข้อ: ขอคำสั่ง sql หาคนที่ชื่อ-นามสกุล ซ้ำกัน
เริ่มหัวข้อโดย: teerapun_top ที่ พฤศจิกายน 16, 2010, 19:50:21 PM
 ;D รบกวนด้วยครับ  เนื่องจากในฐานบัญชี 1 ของผม มีข้อมูลประชากร ที่ซ้ำกันอยู่มาก  ต้องการใช้ คำสั่ง sql เพื่อหาคนเหล่านั้น มาทำการรวมให้เป็นคนเดียวกัน ครับ   ขอบคุณล่วงหน้าครับ
หัวข้อ: Re: ขอคำสั่ง sql หาคนที่ชื่อ-นามสกุล ซ้ำกัน
เริ่มหัวข้อโดย: Multithreading ที่ พฤศจิกายน 16, 2010, 21:37:51 PM
ในโลกจริง  คนเราอาจมีชื่อ-นามสกุล เหมือนกันได้ครับ
หัวข้อ: Re: ขอคำสั่ง sql หาคนที่ชื่อ-นามสกุล ซ้ำกัน
เริ่มหัวข้อโดย: teerapun_top ที่ พฤศจิกายน 16, 2010, 22:00:57 PM
แต่ว่า อันนี้เกิดจากคนคนๆเดียวกันครับ  ปัญหาเกิดจากการนำเข้าข้อมูลในครั้งแรก  และการบันทึกข้อมูลผิดครับ ทำให้เกิดปัญหา คนๆเดียวกัน มีหลายชื่อครับ  :o
หัวข้อ: Re: ขอคำสั่ง sql หาคนที่ชื่อ-นามสกุล ซ้ำกัน
เริ่มหัวข้อโดย: nuttavut ที่ พฤศจิกายน 16, 2010, 22:12:50 PM
;D รบกวนด้วยครับ  เนื่องจากในฐานบัญชี 1 ของผม มีข้อมูลประชากร ที่ซ้ำกันอยู่มาก  ต้องการใช้ คำสั่ง sql เพื่อหาคนเหล่านั้น มาทำการรวมให้เป็นคนเดียวกัน ครับ   ขอบคุณล่วงหน้าครับ

เอาอันนี้ของคุณ
I'm nuke (นุ๊ก)
นักวิชาการคอมพิวเตอร์  รพ.พรหมพิราม
ไปใช้เลยครับ เขาทำไว้ดีมากอยู่แล้ว ;D ;D

ที่นี่ ----> http://hosxp.net/index.php?option=com_smf&Itemid=28&topic=14239.0

ส่วนวิธีนำเข้าก็ตามนี้------>  การนำเข้า Script คลิก (http://hosxp.net/index.php?option=com_smf&Itemid=28&topic=14239.msg109832#msg109832)
หัวข้อ: Re: ขอคำสั่ง sql หาคนที่ชื่อ-นามสกุล ซ้ำกัน
เริ่มหัวข้อโดย: anurak ที่ ธันวาคม 25, 2015, 13:31:54 PM
;D รบกวนด้วยครับ  เนื่องจากในฐานบัญชี 1 ของผม มีข้อมูลประชากร ที่ซ้ำกันอยู่มาก  ต้องการใช้ คำสั่ง sql เพื่อหาคนเหล่านั้น มาทำการรวมให้เป็นคนเดียวกัน ครับ   ขอบคุณล่วงหน้าครับ

สำหรับคนที่มีชื่อ-นามสกุล และ วันเกิดเดียวกันครับ
ใน patient
โค๊ด: MySQL
  1. SELECT COUNT(fname) as จำนวนที่ซ้ำ,concat(pname,fname,'  ',lname) as ชื่อ__สกุล , cid as เลขบัตร, birthday as วันเกิด
  2. FROM patient
  3. GROUP BY concat(pname,fname,'  ',lname), birthday
  4. HAVING (COUNT(fname) > 1)

ใน person
โค๊ด: MySQL
  1. SELECT COUNT(fname) as จำนวนที่ซ้ำ,concat(pname,fname,'  ',lname) as ชื่อ__สกุล , cid as เลขบัตร, birthdate as วันเกิด
  2. FROM person
  3. GROUP BY concat(pname,fname,'  ',lname), birthdate
  4. HAVING (COUNT(fname) > 1)