ผู้เขียน หัวข้อ: ขอความช่วยเหลือเรื่อง SQL ครับ  (อ่าน 6046 ครั้ง)

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

ออฟไลน์ niyomstd

  • Hero Member
  • *****
  • กระทู้: 1,270
  • Respect: +15
    • ดูรายละเอียด
    • โรงพยาบาลแม่เมาะ
ขอความช่วยเหลือเรื่อง SQL ครับ
« เมื่อ: พฤศจิกายน 09, 2010, 11:02:10 AM »
0
ขอความ ช่วยเหลือหน่อยครับ เราจะนับ จำนวนครั้ง หญิงตั้งครรภ์มา visit ทั้งหมดได้อย่างไรครับ
เพิ่มเติมให้ด้วยครับ ขอบคุณครับ
select p.pname,p.fname,p.lname,p.age_y,p.patient_hn,p2.bw,p2.height,p2.albumin,p2.sugar,a.blood_vdrl1_result,a.blood_vdrl2_result,a.blood_hiv1_result,a.blood_hiv2_result,
a.blood_of_result,a.blood_hct_result,a.preg_no ,a.current_preg_age,p1.pa_week,o.bps,o.bpd
 from person_anc a
 left outer join person p on p.person_id = a.person_id
 left outer join house h on h.house_id = p.house_id
 left outer join village v on v.village_id = p.village_id
 left outer join labor_status ats on ats.labor_status_id = a.labor_status_id
 left outer join thaiaddress t on t.addressid = v.address_id
 left outer join person_anc_service p1 on a.person_anc_id=p1.person_anc_id
 left outer join person_anc_screen p2 on p2.person_anc_service_id = p1.person_anc_service_id
 left outer join patient pt on pt.cid=p.cid
 left outer join opdscreen o on o.hn=pt.hn
 where (a.discharge <> 'Y' or a.discharge is null)  and ats.labor_status_name="&Acirc;&Ntilde;&sect;&auml;&Aacute;&egrave;&curren;&Aring;&Iacute;&acute;"
 group by p.cid
 order by a.person_anc_no

 :) :) :)
ตรง ats.labor_status_name="ยังไม่คลอด"เป็นสถานะครับ
« แก้ไขครั้งสุดท้าย: พฤศจิกายน 09, 2010, 11:12:50 AM โดย niyomstd »
นิยม  สีทองแดง
โรงพยาบาลแม่เมาะ  ลำปาง(รพช.30 เตียง)
เริ่มใช้ HOSxP 2 เมษายน 2551
--------------------------------------------------------------------------------------------------------------------------------------------------------------
Master :  CentOS

ออฟไลน์ niyomstd

  • Hero Member
  • *****
  • กระทู้: 1,270
  • Respect: +15
    • ดูรายละเอียด
    • โรงพยาบาลแม่เมาะ
Re: ขอความช่วยเหลือเรื่อง SQL ครับ
« ตอบกลับ #1 เมื่อ: พฤศจิกายน 09, 2010, 11:48:56 AM »
0
ตกไปแล้ว ดันหน่อยครับ
นิยม  สีทองแดง
โรงพยาบาลแม่เมาะ  ลำปาง(รพช.30 เตียง)
เริ่มใช้ HOSxP 2 เมษายน 2551
--------------------------------------------------------------------------------------------------------------------------------------------------------------
Master :  CentOS

ออฟไลน์ [-_เอ็ม_-]

  • Hero Member
  • *****
  • กระทู้: 1,472
  • [-- Developer มือใหม่ --]
  • Respect: +3
    • ดูรายละเอียด
    • โรงพยาบาลบรบือ
Re: ขอความช่วยเหลือเรื่อง SQL ครับ
« ตอบกลับ #2 เมื่อ: พฤศจิกายน 09, 2010, 13:04:59 PM »
0
select count(ov.hn) as visit,p.pname,p.fname,p.lname,p.age_y,p.patient_hn,p2.bw,p2.height,p2.albumin,p2.sugar,a.blood_vdrl1_result,a.blood_vdrl2_result,a.blood_hiv1_result,a.blood_hiv2_result,
a.blood_of_result,a.blood_hct_result,a.preg_no ,a.current_preg_age,p1.pa_week,o.bps,o.bpd
 from person_anc a
 left outer join person p on p.person_id = a.person_id
 left outer join house h on h.house_id = p.house_id
 left outer join village v on v.village_id = p.village_id
 left outer join labor_status ats on ats.labor_status_id = a.labor_status_id
 left outer join thaiaddress t on t.addressid = v.address_id
 left outer join person_anc_service p1 on a.person_anc_id=p1.person_anc_id
 left outer join person_anc_screen p2 on p2.person_anc_service_id = p1.person_anc_service_id
 left outer join patient pt on pt.cid=p.cid
 left outer join opdscreen o on o.hn=pt.hn
 left outer join ovst ov on ov.hn = p.patient_hn
 where (a.discharge <> 'Y' or a.discharge is null)  and ats.labor_status_name="ยังไม่คลอด"
 group by p.cid
 order by a.person_anc_no

ลอง Test ดู ครับผม  ;)
###### [- นิวัฒน์ <M> นัดสถาพร -] ######
   << นักวิชาการคอมพิวเตอร์ รพ.บรบือ >>
<< Rajabhat Mahasarakham University >>
------------------------------------------------------------------------------

ออฟไลน์ nahos

  • Hero Member
  • *****
  • กระทู้: 2,216
  • รพ.นาแห้ว
  • Respect: +7
    • ดูรายละเอียด
    • รพ.นาแห้ว
Re: ขอความช่วยเหลือเรื่อง SQL ครับ
« ตอบกลับ #3 เมื่อ: พฤศจิกายน 09, 2010, 13:36:44 PM »
0
อ้างถึง
เราจะนับ จำนวนครั้ง หญิงตั้งครรภ์มา visit ทั้งหมดได้อย่างไร

จะเอา 1 คน มา visit กี่ครั้ง
หรือทั้งหมด มากี่ visit

ผมว่าใช้ varaible น่าจะชัวร์นะกว่าครับ

ถ้าำคำถามท่านได้คำตอบที่ต้องการจากอาจารย์ท่านใด กรุณากด Thank เบา ๆ ^ ถูกใจกด [applaud] ไม่ชอบใจกด[smite]
>> การโพสต์ขอรายงานที่ดี <<
อ่านซักนิด ถามยังไงให้ได้คำตอบ ? :)
วิธีแสดงตัวว่าเป็นใคร โดย อ.อ๊อด (ให้ข้อมูลว่าเป็นใคร ปฏิบัติงานที่ไหน ใช้ server อะไร OS อะไร HOsxp Vไหน)
ก่อนที่จะตั้งกระทู้ถาม ลองค้นจากกระทู้เก่าดูก่อนไหม จะได้คำตอบเร็วกว่าการรอคำตอบนะ
..........................................................................
เจษ จพ.เภสัชกรรมฯ user@ NAHAEO HOSPITAL LOEI. <br>  Supervise by DANSAI HOSPITAL LOEI. <br>
Start 01/03/2550
=> Server IBM X3200 Ram 6 Gb. OS:Cent OS 6.0  
=> Client 20 client  OS: SP2  => HosXP Version <b>3.56.11.19</b>
-----------------------------
น้ำเต็มแก้ว "การเรียนรู้ไม่มีที่สิ้นสุด"

ออฟไลน์ niyomstd

  • Hero Member
  • *****
  • กระทู้: 1,270
  • Respect: +15
    • ดูรายละเอียด
    • โรงพยาบาลแม่เมาะ
Re: ขอความช่วยเหลือเรื่อง SQL ครับ
« ตอบกลับ #4 เมื่อ: พฤศจิกายน 09, 2010, 13:47:16 PM »
0
ลองแล้วครับ ข้อมูลเยอะเกินไปครับตามรูปครับ
นิยม  สีทองแดง
โรงพยาบาลแม่เมาะ  ลำปาง(รพช.30 เตียง)
เริ่มใช้ HOSxP 2 เมษายน 2551
--------------------------------------------------------------------------------------------------------------------------------------------------------------
Master :  CentOS

ออฟไลน์ thannawe

  • Hero Member
  • *****
  • กระทู้: 2,904
  • Respect: +8
    • ดูรายละเอียด
Re: ขอความช่วยเหลือเรื่อง SQL ครับ
« ตอบกลับ #5 เมื่อ: พฤศจิกายน 09, 2010, 14:02:06 PM »
0
Variable ช่วยได้ครับ ;D :D
กิจจา ชาญธัญกรรม
นักวิชาการคอมพิวเตอร์ชำนาญการ รพ.โพธาราม จ.ราชบุรี
็HOSxP XE

ออฟไลน์ nahos

  • Hero Member
  • *****
  • กระทู้: 2,216
  • รพ.นาแห้ว
  • Respect: +7
    • ดูรายละเอียด
    • รพ.นาแห้ว
Re: ขอความช่วยเหลือเรื่อง SQL ครับ
« ตอบกลับ #6 เมื่อ: พฤศจิกายน 09, 2010, 14:08:29 PM »
0
ลองใช้ varaible นี้นะครับ
อ้างถึง
  Value :=GetSQLIntegerData('select count(*) as visit_count'+
      ' from  person_anc a left outer join labor_status ats on ats.labor_status_id = a.labor_status_id '+
      ' where (a.discharge <> 'Y' or a.discharge is null)  and ats.labor_status_name="ÂѧäÁè¤ÅÍ´" where a.person_id="'+ DBPipeline['person_id']  +'"');
ถ้าำคำถามท่านได้คำตอบที่ต้องการจากอาจารย์ท่านใด กรุณากด Thank เบา ๆ ^ ถูกใจกด [applaud] ไม่ชอบใจกด[smite]
>> การโพสต์ขอรายงานที่ดี <<
อ่านซักนิด ถามยังไงให้ได้คำตอบ ? :)
วิธีแสดงตัวว่าเป็นใคร โดย อ.อ๊อด (ให้ข้อมูลว่าเป็นใคร ปฏิบัติงานที่ไหน ใช้ server อะไร OS อะไร HOsxp Vไหน)
ก่อนที่จะตั้งกระทู้ถาม ลองค้นจากกระทู้เก่าดูก่อนไหม จะได้คำตอบเร็วกว่าการรอคำตอบนะ
..........................................................................
เจษ จพ.เภสัชกรรมฯ user@ NAHAEO HOSPITAL LOEI. <br>  Supervise by DANSAI HOSPITAL LOEI. <br>
Start 01/03/2550
=> Server IBM X3200 Ram 6 Gb. OS:Cent OS 6.0  
=> Client 20 client  OS: SP2  => HosXP Version <b>3.56.11.19</b>
-----------------------------
น้ำเต็มแก้ว "การเรียนรู้ไม่มีที่สิ้นสุด"

ออฟไลน์ niyomstd

  • Hero Member
  • *****
  • กระทู้: 1,270
  • Respect: +15
    • ดูรายละเอียด
    • โรงพยาบาลแม่เมาะ
Re: ขอความช่วยเหลือเรื่อง SQL ครับ
« ตอบกลับ #7 เมื่อ: พฤศจิกายน 09, 2010, 14:23:02 PM »
0
ลองใช้ varaible นี้นะครับ
อ้างถึง
  Value :=GetSQLIntegerData('select count(*) as visit_count'+
      ' from  person_anc a left outer join labor_status ats on ats.labor_status_id = a.labor_status_id '+
      ' where (a.discharge <> 'Y' or a.discharge is null)  and ats.labor_status_name="&Acirc;&Ntilde;&sect;&auml;&Aacute;&egrave;&curren;&Aring;&Iacute;&acute;" where a.person_id="'+ DBPipeline['person_id']  +'"');
เดี๋ยวจะลองดูนะครับ
ขอบคุณครับ
นิยม  สีทองแดง
โรงพยาบาลแม่เมาะ  ลำปาง(รพช.30 เตียง)
เริ่มใช้ HOSxP 2 เมษายน 2551
--------------------------------------------------------------------------------------------------------------------------------------------------------------
Master :  CentOS

ออฟไลน์ niyomstd

  • Hero Member
  • *****
  • กระทู้: 1,270
  • Respect: +15
    • ดูรายละเอียด
    • โรงพยาบาลแม่เมาะ
Re: ขอความช่วยเหลือเรื่อง SQL ครับ
« ตอบกลับ #8 เมื่อ: พฤศจิกายน 09, 2010, 14:58:20 PM »
0
จำนวนครั้งยังไม่ออกครับ  :) :) :)
นิยม  สีทองแดง
โรงพยาบาลแม่เมาะ  ลำปาง(รพช.30 เตียง)
เริ่มใช้ HOSxP 2 เมษายน 2551
--------------------------------------------------------------------------------------------------------------------------------------------------------------
Master :  CentOS

ออฟไลน์ niyomstd

  • Hero Member
  • *****
  • กระทู้: 1,270
  • Respect: +15
    • ดูรายละเอียด
    • โรงพยาบาลแม่เมาะ
Re: ขอความช่วยเหลือเรื่อง SQL ครับ
« ตอบกลับ #9 เมื่อ: พฤศจิกายน 09, 2010, 15:39:43 PM »
0
ใกล้จะตกแล้ว ดันนิดครับ  :) :)
นิยม  สีทองแดง
โรงพยาบาลแม่เมาะ  ลำปาง(รพช.30 เตียง)
เริ่มใช้ HOSxP 2 เมษายน 2551
--------------------------------------------------------------------------------------------------------------------------------------------------------------
Master :  CentOS

ออฟไลน์ woravet

  • Sr. Member
  • ****
  • กระทู้: 409
  • Respect: +12
    • ดูรายละเอียด
Re: ขอความช่วยเหลือเรื่อง SQL ครับ
« ตอบกลับ #10 เมื่อ: พฤศจิกายน 09, 2010, 16:51:50 PM »
0
select ifnull(p.patient_hn,pt.hn) 'hn',p.cid,p.pname,p.fname,p.lname,p.age_y
,p2.bpd,p2.bps,p2.bw,p2.height
,p2.albumin,p2.sugar
,a.blood_vdrl1_result,a.blood_vdrl2_result,a.blood_hiv1_result,a.blood_hiv2_result
,a.blood_of_result,a.blood_hct_result,a.preg_no ,a.current_preg_age,p1.pa_week
,count(*) visit
from person_anc a
left join person p on p.person_id = a.person_id
left join patient pt on p.cid=pt.cid
left join person_anc_service p1 on a.person_anc_id=p1.person_anc_id
left join person_anc_screen p2 on p2.person_anc_service_id=p1.person_anc_service_id
where p1.anc_service_date between '2010-1-1' and '2010-1-31'
group by p.cid
รพ.บึงสามัคคี จ.กำแพงเพชร
*********************
อ.สุชัยและคณะ ขึ้นระบบ 29 ตค.49(Linux+Fedara 5)
*********************
ปัจจุบัน
HOSxP version 3.53.4.27
Server:Windows XP SP2,MySQL 5
Client ประมาณ 15 เครื่อง

ออฟไลน์ nahos

  • Hero Member
  • *****
  • กระทู้: 2,216
  • รพ.นาแห้ว
  • Respect: +7
    • ดูรายละเอียด
    • รพ.นาแห้ว
Re: ขอความช่วยเหลือเรื่อง SQL ครับ
« ตอบกลับ #11 เมื่อ: พฤศจิกายน 09, 2010, 17:08:32 PM »
0
ผมลืมเข้าไปดูตาราง person_anc ครับ นึกว่าจะเก็บ visit  จริง ๆ ต้องนับจาก person_anc_service
ลองใช้ varaible นี้นะครับ
อ้างถึง
  Value :=GetSQLIntegerData('select count(*) as visit_count'+
      ' from  person_anc a left outer join labor_status ats on ats.labor_status_id = a.labor_status_id '+
      ' where (a.discharge <> 'Y' or a.discharge is null)  and ats.labor_status_name="ÂѧäÁè¤ÅÍ´" where a.person_id="'+ DBPipeline['person_id']  +'"');


ลองดูครับ แก้ไขให้แล้ว

ปล.ไปอบรมเชียงใหม่ไหมครับปลายปี ;D
« แก้ไขครั้งสุดท้าย: พฤศจิกายน 09, 2010, 17:11:20 PM โดย nahos »
ถ้าำคำถามท่านได้คำตอบที่ต้องการจากอาจารย์ท่านใด กรุณากด Thank เบา ๆ ^ ถูกใจกด [applaud] ไม่ชอบใจกด[smite]
>> การโพสต์ขอรายงานที่ดี <<
อ่านซักนิด ถามยังไงให้ได้คำตอบ ? :)
วิธีแสดงตัวว่าเป็นใคร โดย อ.อ๊อด (ให้ข้อมูลว่าเป็นใคร ปฏิบัติงานที่ไหน ใช้ server อะไร OS อะไร HOsxp Vไหน)
ก่อนที่จะตั้งกระทู้ถาม ลองค้นจากกระทู้เก่าดูก่อนไหม จะได้คำตอบเร็วกว่าการรอคำตอบนะ
..........................................................................
เจษ จพ.เภสัชกรรมฯ user@ NAHAEO HOSPITAL LOEI. <br>  Supervise by DANSAI HOSPITAL LOEI. <br>
Start 01/03/2550
=> Server IBM X3200 Ram 6 Gb. OS:Cent OS 6.0  
=> Client 20 client  OS: SP2  => HosXP Version <b>3.56.11.19</b>
-----------------------------
น้ำเต็มแก้ว "การเรียนรู้ไม่มีที่สิ้นสุด"

ออฟไลน์ niyomstd

  • Hero Member
  • *****
  • กระทู้: 1,270
  • Respect: +15
    • ดูรายละเอียด
    • โรงพยาบาลแม่เมาะ
Re: ขอความช่วยเหลือเรื่อง SQL ครับ
« ตอบกลับ #12 เมื่อ: พฤศจิกายน 10, 2010, 08:14:33 AM »
0
ก้อว่าครับ ไม่รู้ว่า ผอ อนุมัติเปล่าครับ ถ้าอนุมัติคงได้เจอกันครับ  ;D ;D ;D
นิยม  สีทองแดง
โรงพยาบาลแม่เมาะ  ลำปาง(รพช.30 เตียง)
เริ่มใช้ HOSxP 2 เมษายน 2551
--------------------------------------------------------------------------------------------------------------------------------------------------------------
Master :  CentOS