ผู้เขียน หัวข้อ: คำสั่ง timestampdiff() มีผลต่อการคำนวณอายุของผู้ป่วยที่เกิดในเดือนกุมภาพันธ์  (อ่าน 13746 ครั้ง)

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

ออฟไลน์ Toptech สวนทองพันธุ์ไม้สุโขทัย

  • Full Member
  • ***
  • กระทู้: 155
  • สวนทองพันธุ์ไม้ จ.สุโขทัย
  • Respect: 0
    • ดูรายละเอียด
    • สวนทองพันธุ์ไม้ จ.สุโขทัย
สวัสดีหลังสงกรานต์คับ
       ผมลองใช้คำสั่ง timestampdiff() คำนวณอายุของผู้ป่วยเพื่อใช้แสดงในใบ MAR ตามภาพด้านล่าง แล้วปรากฎว่าอายุของผู้ป่วยทีเกิดในเดือนกุมภาพันธ์ในใบ MAR จะแตกต่างกับอายุของผู้ป่วยในใบสั่งยาผู้ป่วยใน คือว่าอยากให้อายุมันตรงกับความเป็นจริงน่ะคับ คือสั่งพิมพ์ใบ MAR วันนี้อายุก็ต้องคำนวณออกมาวันนี้ ตอนแรกผมใช้คำสั่ง timestampdiff() คิดว่าชัวร์แล้ว แต่พอดี User มาแจ้งว่าทำไมผู้ป่วยที่เกิดเดือนกุมภาพันธ์ แล้วคำนวณออกมาคลาดเคลื่อน ดังนั้นควรใช้คำสั่งอะไรดีครับ

ผมใช้ SQL นี้ในใบ MAR ครับ
select r.an,r.icode,r.mar_time,r.mar_date,concat(dr.name,'  ',dr.strength ) as drname,dr.units,a.hn,
       concat(pt.pname,' ',pt.fname,'   ',pt.lname) as ptname,a.ward,w.name as wname,b.bedno
       ,r.drugusage,pty.name as pttype,r.med_rx_number,du.name1,concat(du.name2,' ',du.name3) as duname
       ,r.qty,r.med_interval_type_id,met.interval_name as inname,r.orderstatus,sp.name1 as spname,concat(sp.name2,'  ',sp.name3) as spname1
       ,pt.drugallergy,dr.units , i.entry_staff , doc.name as stname, a.age_y, a.age_m, a.age_d, k.prediag
       ,os.bw ,os.height,if(sp.name1 is not null,sp.name1,du.name1) as drugusename1 ,if(concat(sp.name2,sp.name3) is not null ,concat(sp.name2,'  ',sp.name3)
       ,concat(du.name2,' ',du.name3)) as drugusename2,(k.bw/1000) as bw_1 ,
       pt.birthday,now()as today,

timestampdiff(year,pt.birthday,curdate()) as count_year,
timestampdiff(month,pt.birthday,curdate())-(timestampdiff(year,pt.birthday,curdate())*12) as count_month,
timestampdiff(day,date_add(pt.birthday,interval (timestampdiff(month,pt.birthday,curdate())) month),curdate()) as count_day

from ipd_mar r

          left outer join drugitems dr on dr.icode=r.icode
          left outer join drugusage du on du.drugusage=r.drugusage
          left outer join an_stat a on a.an=r.an
          left outer join patient pt on pt.hn=a.hn
          left outer join ward w on w.ward=a.ward
          left outer join iptadm b on b.an=r.an
          left outer join pttype pty on pty.pttype=a.pttype
          left outer join med_interval_type met on met.med_interval_type_id=r.med_interval_type_id
          left outer join sp_use sp on sp.sp_use=r.sp_use
          left outer join ipt_order_no i on i.order_no = r.med_rx_number
          left outer join doctor doc on doc.code = i.entry_staff
          left outer join ipt k on k.an=r.an
          left outer join opdscreen os on os.vn=k.vn
where r.med_rx_number=544791 and r.icode <'2000000'
order by r.orderstatus
ธนัญชกร  เชยวัดเกาะ
Admin
ศูนย์ ICT รพ.ศรีสังวรสุโขทัย

http://www.gardengolden.com

doramon

  • บุคคลทั่วไป

ออฟไลน์ Toptech สวนทองพันธุ์ไม้สุโขทัย

  • Full Member
  • ***
  • กระทู้: 155
  • สวนทองพันธุ์ไม้ จ.สุโขทัย
  • Respect: 0
    • ดูรายละเอียด
    • สวนทองพันธุ์ไม้ จ.สุโขทัย
User : Toptech
          ดูแลระบบ รพ.ศรีสังวรสุโขทัย ครับ
          อายุ 30
          บุตร 1
          ภรรยา -
          ภูมิลำเนา สุโขทัย คับผ้มๆๆๆๆ อาจารย์อ๊อด.....
« แก้ไขครั้งสุดท้าย: เมษายน 17, 2009, 10:53:28 AM โดย Toptech »
ธนัญชกร  เชยวัดเกาะ
Admin
ศูนย์ ICT รพ.ศรีสังวรสุโขทัย

http://www.gardengolden.com

ออฟไลน์ wiphusit

  • Hero Member
  • *****
  • กระทู้: 2,426
  • ยอดกมล
  • Respect: +4
    • ดูรายละเอียด
    • โรงพยาบาลทับปุด
User : Toptech
          ดูแลระบบ รพ.ศรีสังวรสุโขทัย ครับ
          อายุ 30
          บุตร 1
          ภรรยา -
          ภูมิลำเนา สุโขทัย คับผ้มๆๆๆๆ อาจารย์อ๊อด.....

ภรรยา -  แสดงว่าไม่มีหรือไม่จำกัดครับ
วิภูษิต  คงแก้ว เจ้าพนักงานเครื่องคอมพิวเตอร์ 
โรงพยาบาลทับปุด
อำเภอทับปุด จ.พังงา 82180
โทร 0-7659-9019 ต่อ 117,101
โทรสาร 0-7659-9115
Thailand.

ออฟไลน์ Toptech สวนทองพันธุ์ไม้สุโขทัย

  • Full Member
  • ***
  • กระทู้: 155
  • สวนทองพันธุ์ไม้ จ.สุโขทัย
  • Respect: 0
    • ดูรายละเอียด
    • สวนทองพันธุ์ไม้ จ.สุโขทัย
ม่ายมีค้าบ...เลยรับไม่จำกัดค้าบ
แถมเรือพ่วงกะลังชู 2 นิ้วค้าบ
ธนัญชกร  เชยวัดเกาะ
Admin
ศูนย์ ICT รพ.ศรีสังวรสุโขทัย

http://www.gardengolden.com

doramon

  • บุคคลทั่วไป
User : Doraemon
          ดูแล admin
          อายุ จำไม่ไ้ด้ แต่ไม่น้อยแล้ว
          บุตร  กำลังคิดว่าจะมี 5 คน
          ภรรยา  เท่าจำนวนบุตร
          ภูมิลำเนา เมืองคนรวย  ของ OK ก็ไม่เก็บ


ยินดีรู้จัก ครับ   ;D

« แก้ไขครั้งสุดท้าย: เมษายน 17, 2009, 12:10:39 PM โดย doraemon »

doramon

  • บุคคลทั่วไป
ผมลองใช้คำสั่ง timestampdiff

รูปหนึ่ง  เกิดจากการใช้ timestampdif()  เดียวผม ตรวจสอบก่อนครับ ไม่ทราบว่า ท mysql ตัวไหน
            ไม่แน่ใจ แต่ว่า pt.birthday  ไม่มีเวลาเกิดครับ  ต้องใช้  pt.birthtime  ด้วย
รูปสอง เกิดจากการใช้  an_stat   -->  age_y age_m  age_d  เลยตรง
« แก้ไขครั้งสุดท้าย: เมษายน 17, 2009, 12:19:18 PM โดย doraemon »

ออฟไลน์ howtodo

  • Hero Member
  • *****
  • กระทู้: 646
  • Respect: 0
    • ดูรายละเอียด
    • สื่อน้ำท่วม
The function TIMESTAMPDIFF returns a new timestamp value based on adding an interval to an existing timestamp value.
http://www.smallsql.de/doc/sql-functions/date-time/timestampdiff.html

http://dev.mysql.com/doc/refman/5.0/en/date-calculations.html

age from date of birth
This program takes your complete date of birth (year, month and day of month) and gives you the exact age which determines the years, months and days of the calculated age of the person. Following program is fully validated. Because of this you can not enter any invalid year or month or day for your date of birth.

 
http://www.roseindia.net/java/example/java/util/AgeCalculation.shtml
« แก้ไขครั้งสุดท้าย: เมษายน 17, 2009, 12:38:10 PM โดย howtodo »
ขึ้นระบบ 2549  เข้ามารับช่วงต่อ ต.ค.50 - ส.ค.53 ไม่ครบ 3 ปี ขอบคุณสำหรับความรู้ ความเมตตา ความกรุณา ที่มีให้กับตัวข้าผู้ด้อยปัญญาด้วยดีตลอดมา

ออฟไลน์ Toptech สวนทองพันธุ์ไม้สุโขทัย

  • Full Member
  • ***
  • กระทู้: 155
  • สวนทองพันธุ์ไม้ จ.สุโขทัย
  • Respect: 0
    • ดูรายละเอียด
    • สวนทองพันธุ์ไม้ จ.สุโขทัย
ยินดีที่ได้รู้จักเช่นกันครับ
ขอบคุณอาจารย์อ๊อดกับคุณ howtodo ครับ

- ตอนนี้ผมใช้ HOSxP v.3.52.3.2
                    MySQL v.5.1.23
« แก้ไขครั้งสุดท้าย: เมษายน 17, 2009, 13:47:15 PM โดย Toptech »
ธนัญชกร  เชยวัดเกาะ
Admin
ศูนย์ ICT รพ.ศรีสังวรสุโขทัย

http://www.gardengolden.com

doramon

  • บุคคลทั่วไป
    ไม่แน่ใจ แต่ว่า pt.birthday  ไม่มีเวลาเกิดครับ  ต้องใช้  pt.birthtime  ด้วย

ออฟไลน์ atit

  • Hero Member
  • *****
  • กระทู้: 1,233
  • ขออภัย ความรู้ไม่มาก
  • Respect: +3
    • ดูรายละเอียด
User : Doraemon
          ดูแล admin
          อายุ จำไม่ไ้ด้ แต่ไม่น้อยแล้ว
          บุตร  กำลังคิดว่าจะมี 5 คน
          ภรรยา  เท่าจำนวนบุตร
          ภูมิลำเนา เมืองคนรวย  ของ OK ก็ไม่เก็บ


ยินดีรู้จัก ครับ   ;D



เท่าที่มีก็เกินแล้วไม่ใช่หรือครับ หรือนับผิดหว่าเรา
"-"           รู้อะไรไม่สู้รู้วิชา รู้จักหาในบอร์ดเป็นยอดคน                   tel 081-3202497 
ความรู้เพียงเล็กน้อย อาจช่วยคนเป็นร้อยแก้ปัญหา
เพราะฉะนั้น อย่ากลัวที่จะบอกสิ่งที่คุณรู้กับคนอื่น แม้จะเป็นเรื่องพื้นๆ ก็ตาม
cen-os 64 bit ,ram 4 g ,my sql 5.1.33
วิธีแนะนำตัวเอง  http://hosxp.net/index.php?option=com_smf&Itemid=28&topic=4413.0
ก่อนตั้งกระทู้ใหม่ ลองหาดูกระทู่เก่าก่อนดีบ่? อาจได้คำตอบเร็วกว่าเด้อ   http://hosxp.net/index.php?option=com_smf&Itemid=28&action=search
วิธีขอบคุณผู้ที่ตอบคำถามถูกใจ   http://hosxp.net/index.php?option=com_smf&Itemid=28&topic=8180.0
การเปิดใช้ Server แยก เก็บรูปภาพ/log http://hosxp.net/index.php?option=com_smf&Itemid=28&topic=10169.0
การติดตั้ง mysql http://hosxp.net/index.php?option=com_smf&Itemid=28&topic=11513.0
sql วันละคำกับคุณperjer http://hosxp.net/index.php?option=com_smf&Itemid=28&topic=4007.0
8)ยินดีต้อนรับสู่สังคมแห่งการแบ่งปัน- การแบ่งปันทำให้สังคมน่าอยู่- ;Dขอขอบคุณ
- อ.mn ผู้เขียนโปรแกรมดีๆและช่วยขึ้นระบบ
- อ.อ๊อด,อ.นาจ,อ.ขวด,อ.โก้,อ.nutawut,อ.ตั๊ก,อ.JD,อ.กิจ...ที่คอยช่วยเหลือและให้ความรู้
- ทุกท่านที่ช่วย review โปรแกรมทำให้เราได้ใช้โปรแกรมที่สุดยอด(อยากให้เป็นโปรแกรมระดับประเทศเร็วๆจังจะได้ไม่ต้องง้อ สปสช 5555 :D)

ออฟไลน์ Toptech สวนทองพันธุ์ไม้สุโขทัย

  • Full Member
  • ***
  • กระทู้: 155
  • สวนทองพันธุ์ไม้ จ.สุโขทัย
  • Respect: 0
    • ดูรายละเอียด
    • สวนทองพันธุ์ไม้ จ.สุโขทัย
เรียนคุณพี่ SrwooD
       ผมท้าวความนิดนึงนะครับ  เนื่องจากในใบ MAR แต่เดิมนั้นนำอายุจาก an_stat มาใช้ ซึ่งเป็นอายุในวัน Admit  แต่ว่าทางห้องยาผู้ป่วยใน แจ้งว่าต้องการให้อายุเป็นปัจจุบันในวันที่พิมพ์ใบ MAR ออกมา ผมจึงใช้ฟังก์ชั่น timestampdiff() ในการคำนวณ ได้ผลออกมาดีครับผม
       แต่ว่าติดอยู่นิดนึงคือ ถ้าผู้ป่วยรายใดเกิดในเดือนกุมพาพันธ์ อายุที่คำนวณด้วยฟังก์ชั่น timestampdiff() จะคลาดเคลื่อนจากความเป็นจริงไปประมาณ 2-3 วันครับ ก็เลยสงสัยครับว่าควรจะทำไงดีสำหรับกรณีนี้
       ขอบคุณครับพี่ที่ให้คำแนะนำครับผม
ธนัญชกร  เชยวัดเกาะ
Admin
ศูนย์ ICT รพ.ศรีสังวรสุโขทัย

http://www.gardengolden.com

ออฟไลน์ Toptech สวนทองพันธุ์ไม้สุโขทัย

  • Full Member
  • ***
  • กระทู้: 155
  • สวนทองพันธุ์ไม้ จ.สุโขทัย
  • Respect: 0
    • ดูรายละเอียด
    • สวนทองพันธุ์ไม้ จ.สุโขทัย
คุณ atit คับ
      ชอบจิงจิงเลยนิยาม "เมียรัก" ของคุณ atit เนี่ย (ผมโชคดีรึป่าวเนี่ยที่ไม่มีเมียกะเค้า)
เมียเรา
คือ ผู้หญิงเอนกประสงค์ที่มีการปรับสภาพเข้ากับสภาพแวดล้อมได้ดี
สามารถพลิกแพลงใช้งานได้หลายรูปแบบ
ค่าใช้จ่ายในการ maintenance ต่ำ
สามารถดูแลตัวเองได้ ไม่ค่อยเป็นภาระของ
user มักใช้ประโยชน์ร่วมกันในหมู่เพื่อนฝูง

เมียบังเกิดเกล้า
สามีที่มีภรรยาประเภทนี้จะใช้คำพูดอยู่สองคำ
คือ "ครับ" กับ "ใช่ครับ" และใช้สรรพนามเรียกภรรยาว่า "แม่"
มักอธิบายให้เพื่อนว่าเรียกตามลูก
แต่เพื่อนๆ ไม่แน่ใจว่าเรียกตามลูก หรือเรียกด้วย
ความเคารพยำเกรง เพื่อสวัสดิภาพของตัวเอง และที่สำคัญ ได้ลบคำว่า
"นอกใจ" ออกจากสมองและพจนานุกรมในบ้านเรียบร้อยแล้ว

.....ซังแหนว แซวหนังนะครับอย่าถือสา...เลยค้าบ
ธนัญชกร  เชยวัดเกาะ
Admin
ศูนย์ ICT รพ.ศรีสังวรสุโขทัย

http://www.gardengolden.com

ออฟไลน์ thannawe

  • Hero Member
  • *****
  • กระทู้: 2,904
  • Respect: +8
    • ดูรายละเอียด
เอ้า รอ อ.วุธมาตอบครับผม  :D ;D :D ;D
กิจจา ชาญธัญกรรม
นักวิชาการคอมพิวเตอร์ชำนาญการ รพ.โพธาราม จ.ราชบุรี
็HOSxP XE

ออฟไลน์ SrWooD

  • Hero Member
  • *****
  • กระทู้: 1,024
  • Respect: +1
    • ดูรายละเอียด
ลองตรวจสอบแล้วครับ พบปัญหาดังกล่าวจริงๆ ครับ

คงต้องรอ อ.MN หรือ อ.อ๊อด มาตอบอีกครั้งครับ

 ;D ;D ;D
โรงพยาบาลโพธิ์ทอง จังหวัดอ่างทอง

ออฟไลน์ atit

  • Hero Member
  • *****
  • กระทู้: 1,233
  • ขออภัย ความรู้ไม่มาก
  • Respect: +3
    • ดูรายละเอียด
คุณ atit คับ
      ชอบจิงจิงเลยนิยาม "เมียรัก" ของคุณ atit เนี่ย (ผมโชคดีรึป่าวเนี่ยที่ไม่มีเมียกะเค้า)
เมียเรา
คือ ผู้หญิงเอนกประสงค์ที่มีการปรับสภาพเข้ากับสภาพแวดล้อมได้ดี
สามารถพลิกแพลงใช้งานได้หลายรูปแบบ
ค่าใช้จ่ายในการ maintenance ต่ำ
สามารถดูแลตัวเองได้ ไม่ค่อยเป็นภาระของ
user มักใช้ประโยชน์ร่วมกันในหมู่เพื่อนฝูง

เมียบังเกิดเกล้า
สามีที่มีภรรยาประเภทนี้จะใช้คำพูดอยู่สองคำ
คือ "ครับ" กับ "ใช่ครับ" และใช้สรรพนามเรียกภรรยาว่า "แม่"
มักอธิบายให้เพื่อนว่าเรียกตามลูก
แต่เพื่อนๆ ไม่แน่ใจว่าเรียกตามลูก หรือเรียกด้วย
ความเคารพยำเกรง เพื่อสวัสดิภาพของตัวเอง และที่สำคัญ ได้ลบคำว่า
"นอกใจ" ออกจากสมองและพจนานุกรมในบ้านเรียบร้อยแล้ว

.....ซังแหนว แซวหนังนะครับอย่าถือสา...เลยค้าบ

มีเมียดีก็อยากโชว์บ้างแค่นั้นเองครับ เผื่อคนอื่นอยากมีบ้าง55555
"-"           รู้อะไรไม่สู้รู้วิชา รู้จักหาในบอร์ดเป็นยอดคน                   tel 081-3202497 
ความรู้เพียงเล็กน้อย อาจช่วยคนเป็นร้อยแก้ปัญหา
เพราะฉะนั้น อย่ากลัวที่จะบอกสิ่งที่คุณรู้กับคนอื่น แม้จะเป็นเรื่องพื้นๆ ก็ตาม
cen-os 64 bit ,ram 4 g ,my sql 5.1.33
วิธีแนะนำตัวเอง  http://hosxp.net/index.php?option=com_smf&Itemid=28&topic=4413.0
ก่อนตั้งกระทู้ใหม่ ลองหาดูกระทู่เก่าก่อนดีบ่? อาจได้คำตอบเร็วกว่าเด้อ   http://hosxp.net/index.php?option=com_smf&Itemid=28&action=search
วิธีขอบคุณผู้ที่ตอบคำถามถูกใจ   http://hosxp.net/index.php?option=com_smf&Itemid=28&topic=8180.0
การเปิดใช้ Server แยก เก็บรูปภาพ/log http://hosxp.net/index.php?option=com_smf&Itemid=28&topic=10169.0
การติดตั้ง mysql http://hosxp.net/index.php?option=com_smf&Itemid=28&topic=11513.0
sql วันละคำกับคุณperjer http://hosxp.net/index.php?option=com_smf&Itemid=28&topic=4007.0
8)ยินดีต้อนรับสู่สังคมแห่งการแบ่งปัน- การแบ่งปันทำให้สังคมน่าอยู่- ;Dขอขอบคุณ
- อ.mn ผู้เขียนโปรแกรมดีๆและช่วยขึ้นระบบ
- อ.อ๊อด,อ.นาจ,อ.ขวด,อ.โก้,อ.nutawut,อ.ตั๊ก,อ.JD,อ.กิจ...ที่คอยช่วยเหลือและให้ความรู้
- ทุกท่านที่ช่วย review โปรแกรมทำให้เราได้ใช้โปรแกรมที่สุดยอด(อยากให้เป็นโปรแกรมระดับประเทศเร็วๆจังจะได้ไม่ต้องง้อ สปสช 5555 :D)

ออฟไลน์ Toptech สวนทองพันธุ์ไม้สุโขทัย

  • Full Member
  • ***
  • กระทู้: 155
  • สวนทองพันธุ์ไม้ จ.สุโขทัย
  • Respect: 0
    • ดูรายละเอียด
    • สวนทองพันธุ์ไม้ จ.สุโขทัย
อาจารย์ทุกท่านครับ ผมรอคำตอบอยู่..... ขอความช่วยเหลือด้วยครับ
ขอบคุณล่วงหน้าครับ
ธนัญชกร  เชยวัดเกาะ
Admin
ศูนย์ ICT รพ.ศรีสังวรสุโขทัย

http://www.gardengolden.com

ออฟไลน์ manoi

  • Hero Member
  • *****
  • กระทู้: 8,669
  • Respect: +170
    • ดูรายละเอียด
    • HOSxP Community Center
ใช้ Function GetThaiAge ใน report designer ช่วยได้นะครับ

ใน code ของ Variable เขียนคล้ายๆ แบบนี้

Value := GetThaiAge(ppDBPipeLine['birthday'],CurrentDate) ;
HOSxP Project Manager / Cheif Developer / BMS MD