โปรแกรม JHCS

  • การเขียน Script SQL  "Select" อย่างง่าย
  • ใช้คิวรี่(Query)ข้อมูล JHCIS ผ่านโปรแกรม Navicat
1. ก่อนอื่นต้องเข้าโปรแกรม Navicat (ตามรูป) คลิ๊กที่ 1และ2

    2.จากนั้นเลือก New Query จะได้หน้าว่างๆ"สำหรับเขียนQuery" ขึ้นมา 1 หน้า ดังรูป

    3.ตรงหน้าว่างๆ เริ่มพิมพ์ คำว่า Select ลองดู  หรือพิมพ์แค่Se แล้วจะมีข้อความ Select ขึ้นมาอัตโนมัติ "Enter ได้เลยครับ" และพิมพ์ ดอกจัน *  พิมพ์ From  และ person (ดังรูป)



    4.คลิ๊ก Query builder (ด้านซ้าย) จะได้กล่อง ขึ้นมา1 กล่อง สเมือนตัวแทน ตารางที่เราเลือกไว้ "คือตารา person" ซึ่งในช่องด้านซ้ายเราสามารถเลือกได้ว่าจะให้แสดงตารางอะไรออกมาให้เราดูได้บ้าง

     
    5.คลิ๊ก "run" จะได้ตารางตามที่ เราต้องการ แสดงให้เห็นอยู่ด้านล่าง " 1 สิ้งที่เราเลือก 2 คือผลลัพธ์ " ##ต่อจากนั้น คือเราต้องการหาผลลัพธ์ตามเงื่อนไขที่กำหนด หรือการกำหนดเงื่อนไขในส่วนของ" Where" นั่นเอง

    6."where"  ...ในส่วนนี้ก็แค่กำหนดว่าเราต้องการให้แสดงข้อมูลจากตารางอย่างไร
    เช่น ต้องการคน อายุ 35 ปีขึ้นไป (ก็กำหนดเงือนไข ดังนี้)
    " WHERE getAgeYearNum(person.birth,CURDATE()) >=35 "
    หรือต้องการ เฉพาะ type 1,3 คือ ประชากรที่รับผิดชอบ (ตามโปรแกรม JHCIS) ก็แค่เพิ่มเงื่อนไข
     " AND person.typelive in ('1','3')"
    หรือ อยากให้ข้อมูลเรียง ตามหมู่ ก็เพิ่มเงื่อนไข "ORDER BY person.mumoi"
    หรือเรียงทั้งหมู่และบ้านเลขที่ ก็ตามนี้ ORDER BY person.mumoi,person.hnomoi ASC 
    และสุดท้ายอย่าลืม เครื่องหมาย (;) ปิดท้ายนะครับ ..โปรแกรมจะได้เข้าใจว่าให้ประมวลผลถึงไหนครับ
    " ดูตัวอย่าง"

    7.สิ่งสำคัญในการselect ข้อมูลจากฐานข้อมูลใดๆ ก็ตาม ต้องรู้จักตารางและคอลัมน์ ในตารางนั้นๆว่า รหัสหรือเงื่อนไขที่โปรแกรมเมอร์กำหนดไว้ หมายถึงอะไร และเกี่ยวข้องกับตารางอื่นอย่างไร(Relation)
    ยกตัวอย่าง จากตาราง person (ด้านบน) หากเราต้องการหาเงื่อนไขเพิ่มอีกว่า "ให้ตัดคนที่เสียชีวิตแล้วออกทั้งหมด" เราก็ต้องเพิ่มเงื่อนไขที่ว่า "ให้เลือกประชากร35 ปีที่มีทั้งหมดและ ลบ ออกด้วย ประชากรจากตารางคนที่เสียชีวิตแล้ว (ตาราง persondeath) 
     ขั้นตอนคือ เพิ่ม เงื่อนไขต่อไปนี้เข้าไป "AND person.pid NOT in (SELECT persondeath.pid FROM persondeath)" ทั้งนี้ต้องอยู่ก่อน แถว Order by นะครับ


    8.หากจะตัดข้อมูลผู้ป่วยเรื้อรังออกจากกลุ่มอายุ 35 ปี ขึ้นไป ออกด้วย (เพื่อนำไปเป็นเป้าหมายคัดกรอง ใน Screenning ก็เพิ่มเงื่อนไข "AND person.pid NOT IN (SELECT personchronic.pid FROM personchronic)"
    ตามนี้ครับ

    9.สำหรับวิธีการ Select ข้อมูล เพื่อเลือกดูจากฐานข้อมูล JHCIS ผ่านทางโปรแกรม Navicat เบื้องต้น ก็ประมาณนี้ครับ ส่วน script ในการ รัน ก็ลองcopy ไปใช้ดูครับ หรือจะเข้าดาว์นโหลด ที่เมนู ดาว์นโหลดก็ได้ครับ link download
    SELECT
    person.pcucodeperson,
    person.pid,
    person.prename,
    person.fname,
    person.lname,
    person.birth,
    person.sex,
    person.mumoi,
    person.hnomoi
    FROM person
    WHERE getAgeYearNum(person.birth,CURDATE()) >=35
    AND person.typelive in ('1','3')
    AND person.pid NOT in (SELECT persondeath.pid FROM persondeath)
    AND person.pid NOT IN (SELECT personchronic.pid FROM personchronic)
    ORDER BY person.mumoi,person.hnomoi ASC;

    ไม่มีความคิดเห็น:

    https://www.blogs

     kllgnsgkj[jtlm'oahd bfldkb'pdojgaojp mfigjdo;sjgaij misjgo;sjagijwo;