ผู้เขียน หัวข้อ: รบกวนสอบถาม คำสั่ง SQL  (อ่าน 3844 ครั้ง)

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

ออฟไลน์ rimkong

  • Full Member
  • ***
  • กระทู้: 207
  • Respect: 0
    • ดูรายละเอียด
รบกวนสอบถาม คำสั่ง SQL
« เมื่อ: มิถุนายน 16, 2008, 13:33:26 PM »
0
รบกวนสอบถามเรื่อง คำสั่ง SQL กับอาจารย์ทุกท่านด้วยครับ
คือผมต้องการทำรายงาน Pt ที่เป็นความดันโดยแยกเป็นแต่ละตำบล
ผมลองทำแล้วปรากฎว่า ได้ชื่อ และ HN ซ้ำมา ไม่แน่ใจว่าต้องใช้คำสั่งใด
ในการตัดชื่อ และ HN ซ้ำออก หรือท่านใดมีรายงานแบบนี้ ก็รบกวนขอด้วยนะครับ
Bungkla Hospital 
อบรมกับ อ.ชัยพร สุรเตมีย์กุล ที่ศูนย์ ICT ขอนแก่น รุ่น 1

ไม่ได้ทำงานดูแลระบบแล้ว  แต่มาขอศึกษาเก็บเกี่ยวความรู้ครับ

ออฟไลน์ pop_hosxp

  • Hero Member
  • *****
  • กระทู้: 3,128
  • Respect: +38
    • ดูรายละเอียด
    • Phanomphrai Hospital
Re: รบกวนสอบถาม คำสั่ง SQL
« ตอบกลับ #1 เมื่อ: มิถุนายน 16, 2008, 13:40:31 PM »
0
ลองอันนี้ดูครับ


select  distinct o.hn,p.pname,p.fname,p.lname,vs.age_y,p.moopart,p.tmbpart
from vn_stat vs
left outer join patient p on p.hn = vs.hn
where vs.vstdate  between '2008-01-01' and '2008-05-10'
and p.moopart in ("4")
and p.tmbpart in ("01")
 and ( (vs.pdx = "I10")
 or (vs.dx0 = "I10")
 or (vs.dx1 = "I10")
 or (vs.dx2 = "I10")
 or (vs.dx3 = "I10")
 or (vs.dx4 = "I10")
 or (vs.dx5 = "I10"))
group by o.hn,p.pname,p.fname,p.lname,vs.age_y,p.moopart,p.tmbpart
pop434241@gmail.com
รพ.พนมไพร จ.ร้อยเอ็ด www.phanomphrai.net

ออฟไลน์ rimkong

  • Full Member
  • ***
  • กระทู้: 207
  • Respect: 0
    • ดูรายละเอียด
Re: รบกวนสอบถาม คำสั่ง SQL
« ตอบกลับ #2 เมื่อ: มิถุนายน 16, 2008, 16:16:55 PM »
0
ขอบคุณมากครับ คุณ pop_hosxp แต่ก็ยังมีซ้ำมาอยู่นะครับแต่ก็ไม่มาก
วิทยายุทธของท่าน pop ช่างล้ำเลิศจริง ๆ ข้าน้อยขอนับถือ
Bungkla Hospital 
อบรมกับ อ.ชัยพร สุรเตมีย์กุล ที่ศูนย์ ICT ขอนแก่น รุ่น 1

ไม่ได้ทำงานดูแลระบบแล้ว  แต่มาขอศึกษาเก็บเกี่ยวความรู้ครับ

ออฟไลน์ pop_hosxp

  • Hero Member
  • *****
  • กระทู้: 3,128
  • Respect: +38
    • ดูรายละเอียด
    • Phanomphrai Hospital
Re: รบกวนสอบถาม คำสั่ง SQL
« ตอบกลับ #3 เมื่อ: มิถุนายน 16, 2008, 23:03:47 PM »
0
ไม่ขนาดนั้นหรอกครับ ไม่งั้นจะยังคงมีข้อมูลที่ซ้ำอยู่เหรอครับ
 ;D

จริง ๆ แล้ว การซ้ำน่าจะเกิดจากการหาข้อมูลที่เป็นแบบข้ามปี ทำให้อายุผู้ป่วยคนเดียวกัน ไม่เท่ากัน ถ้าจะให้ดีน่าจะเอาวันเกิดมาหาอายุจะได้ไม่ซ้ำอีก ครับ

ปล.ตอนนี้ใช้ pocket pc ตอบยากชะมัด  :D
pop434241@gmail.com
รพ.พนมไพร จ.ร้อยเอ็ด www.phanomphrai.net

ออฟไลน์ rimkong

  • Full Member
  • ***
  • กระทู้: 207
  • Respect: 0
    • ดูรายละเอียด
Re: รบกวนสอบถาม คำสั่ง SQL
« ตอบกลับ #4 เมื่อ: มิถุนายน 17, 2008, 08:43:12 AM »
0
อ้างถึง
จริง ๆ แล้ว การซ้ำน่าจะเกิดจากการหาข้อมูลที่เป็นแบบข้ามปี ทำให้อายุผู้ป่วยคนเดียวกัน ไม่เท่ากัน ถ้าจะให้ดีน่าจะเอาวันเกิดมาหาอายุจะได้ไม่ซ้ำอีก ครับ

 :'(จะต้องเพิ่มแก้ไขคำสั่งยังไงครับ คุณ pop_hosxp
Bungkla Hospital 
อบรมกับ อ.ชัยพร สุรเตมีย์กุล ที่ศูนย์ ICT ขอนแก่น รุ่น 1

ไม่ได้ทำงานดูแลระบบแล้ว  แต่มาขอศึกษาเก็บเกี่ยวความรู้ครับ

ออฟไลน์ SrWooD

  • Hero Member
  • *****
  • กระทู้: 1,024
  • Respect: +1
    • ดูรายละเอียด
Re: รบกวนสอบถาม คำสั่ง SQL
« ตอบกลับ #5 เมื่อ: มิถุนายน 17, 2008, 08:56:38 AM »
0
select  distinct o.hn,p.pname,p.fname,p.lname,vs.age_y,p.moopart,p.tmbpart
from vn_stat vs
left outer join patient p on p.hn = vs.hn
where vs.vstdate  between '2008-01-01' and '2008-05-10'
and p.moopart in ("4")
and p.tmbpart in ("01")
 and ( (vs.pdx = "I10")
 or (vs.dx0 = "I10")
 or (vs.dx1 = "I10")
 or (vs.dx2 = "I10")
 or (vs.dx3 = "I10")
 or (vs.dx4 = "I10")
 or (vs.dx5 = "I10"))
group by o.hn,p.pname,p.fname,p.lname,vs.age_y,p.moopart,p.tmbpart

 o.hn 

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

ออฟไลน์ rimkong

  • Full Member
  • ***
  • กระทู้: 207
  • Respect: 0
    • ดูรายละเอียด
Re: รบกวนสอบถาม คำสั่ง SQL
« ตอบกลับ #6 เมื่อ: มิถุนายน 17, 2008, 09:11:31 AM »
0
select  distinct vs.hn,p.pname,p.fname,p.lname,vs.age_y,p.moopart,p.tmbpart
from vn_stat vs
left outer join patient p on p.hn = vs.hn
where vs.vstdate  between '2008-01-01' and '2008-05-10'
and p.moopart in ("4")
and p.tmbpart in ("01")
 and ( (vs.pdx = "I10")
 or (vs.dx0 = "I10")
 or (vs.dx1 = "I10")
 or (vs.dx2 = "I10")
 or (vs.dx3 = "I10")
 or (vs.dx4 = "I10")
 or (vs.dx5 = "I10"))
group by vs.hn,p.pname,p.fname,p.lname,vs.age_y,p.moopart,p.tmbpart

 vs.hn 

 ;D ;D ;D ;D ;D
Bungkla Hospital 
อบรมกับ อ.ชัยพร สุรเตมีย์กุล ที่ศูนย์ ICT ขอนแก่น รุ่น 1

ไม่ได้ทำงานดูแลระบบแล้ว  แต่มาขอศึกษาเก็บเกี่ยวความรู้ครับ

ออฟไลน์ woravet

  • Sr. Member
  • ****
  • กระทู้: 409
  • Respect: +12
    • ดูรายละเอียด
Re: รบกวนสอบถาม คำสั่ง SQL
« ตอบกลับ #7 เมื่อ: มิถุนายน 17, 2008, 10:03:49 AM »
0
select  p.hn,p.pname,p.fname,p.lname,v.age_y,p.moopart,p.tmbpart
from patient p
left  join vn_stat v on v.hn = p.hn
left join ovstdiag o on o.vn=v.vn
where v.vstdate  between '2008-1-1' and '2008-1-31'
and p.moopart='4'
and p.tmbpart='01'
and o.icd10 between 'i10' and 'i1599'
group by p.hn
order by p.hn

**ระวังไม่ระบุรหัสจังหวัดจะเป็นของจังหวัดอื่นได้ ถ้ามีข้อมูล
**ระวัง moopart ระบุอย่างไรบ้าง
รพ.บึงสามัคคี จ.กำแพงเพชร
*********************
อ.สุชัยและคณะ ขึ้นระบบ 29 ตค.49(Linux+Fedara 5)
*********************
ปัจจุบัน
HOSxP version 3.53.4.27
Server:Windows XP SP2,MySQL 5
Client ประมาณ 15 เครื่อง

ออฟไลน์ pop_hosxp

  • Hero Member
  • *****
  • กระทู้: 3,128
  • Respect: +38
    • ดูรายละเอียด
    • Phanomphrai Hospital
Re: รบกวนสอบถาม คำสั่ง SQL
« ตอบกลับ #8 เมื่อ: มิถุนายน 17, 2008, 10:55:40 AM »
0
ขอโทษทีครับ ลืมแก้ตรงที่คุณ SrWood บอกครับ พอดีไม่ได้อยู่ที่ รพ. เลยยังไม่ได้ลอง run ในสายฟ้าก่อนครับ  :P
pop434241@gmail.com
รพ.พนมไพร จ.ร้อยเอ็ด www.phanomphrai.net

ออฟไลน์ rimkong

  • Full Member
  • ***
  • กระทู้: 207
  • Respect: 0
    • ดูรายละเอียด
Re: รบกวนสอบถาม คำสั่ง SQL
« ตอบกลับ #9 เมื่อ: มิถุนายน 17, 2008, 11:14:03 AM »
0
อ้างถึง
จริง ๆ แล้ว การซ้ำน่าจะเกิดจากการหาข้อมูลที่เป็นแบบข้ามปี ทำให้อายุผู้ป่วยคนเดียวกัน ไม่เท่ากัน ถ้าจะให้ดีน่าจะเอาวันเกิดมาหาอายุจะได้ไม่ซ้ำอีก ครับ

 :'(จะต้องเพิ่มแก้ไขคำสั่งยังไงครับ คุณ pop_hosxp
   รบกวนพี่ คุณ pop_hosxp ด้วยครับ ที่คุณ woravet แก้ให้เป็นการนำอายุมาแสดง
   ไม่ใช่เป็นการนำ เอาวันเกิดมาหาอายุ อย่าที่คุณ pop เสนอยังก็รบกวน คุณ pop ด้ยนะครับ
Bungkla Hospital 
อบรมกับ อ.ชัยพร สุรเตมีย์กุล ที่ศูนย์ ICT ขอนแก่น รุ่น 1

ไม่ได้ทำงานดูแลระบบแล้ว  แต่มาขอศึกษาเก็บเกี่ยวความรู้ครับ

ออฟไลน์ pop_hosxp

  • Hero Member
  • *****
  • กระทู้: 3,128
  • Respect: +38
    • ดูรายละเอียด
    • Phanomphrai Hospital
Re: รบกวนสอบถาม คำสั่ง SQL
« ตอบกลับ #10 เมื่อ: มิถุนายน 17, 2008, 13:08:43 PM »
0
ลองใช้ (datediff(p.birthdate, date())/365 as age

ไม่แน่ใจนะครับ ลองดูก่อนครับ ฝากอาจารย์ท่านอื่นตรวจสอบด้วยครับ

จริง ๆ ลองค้นหาดูใน forum เรื่องการหาอายุก็ได้ครับ รู้สว่าจะมีคนบอกไว้แล้วครับ
pop434241@gmail.com
รพ.พนมไพร จ.ร้อยเอ็ด www.phanomphrai.net