ผู้เขียน หัวข้อ: ตัวอย่าง SQL สำหรับ ncdscreen ผู้ที่ยังไม่เคยตรวจ ปีงบประมาณ 2557  (อ่าน 566 ครั้ง)

uploadfile

  • Administrator
  • Newbie
  • *****
  • กระทู้: 27
  • หมื่นรู้ มิสู้ปล่อยวาง
    • ดูรายละเอียด
    • อีเมล์
SET @startdate := '2013-10-01';
SET @enddate := '2014-09-30';
SELECT
person.pcucodeperson,
person.pid,
person.hcode,
person.prename,
person.fname,
person.lname,
person.birth,
person.sex,
person.idcard,
DATE_FORMAT(FROM_DAYS(TO_DAYS(now()) - TO_DAYS(person.birth)), '%Y') + 0 AS age,
n.pcucode,
n.pid,
h.villcode

FROM
person
LEFT JOIN
(SELECT pcucode,pid,screen_date FROM ncdpersonscreenall WHERE screen_date BETWEEN @startdate and @enddate)as n ON person.pcucodeperson = n.pcucode AND person.pid = n.pid
INNER JOIN
house h ON person.hcode = h.hcode
WHERE
(DATE_FORMAT(FROM_DAYS(TO_DAYS(now()) - TO_DAYS(person.birth)), '%Y') + 0) >= 15
AND ISNULL(n.pcucode)
AND CONCAT(person.pcucodeperson,person.pid) NOT IN (SELECT CONCAT(personchronic.pcucodeperson,personchronic.pid) FROM personchronic )
ORDER BY h.villcode