#SQL For JHCIS อาชีพของประชากร อายุ 15-59 ปี ในเขตรับผิดชอบ
SET @getagedate = '2019-10-01';
SELECT person.pid,
CONCAT_WS('-',SUBSTRING(person.idcard,1,1),SUBSTRING(person.idcard,2,4),SUBSTRING(person.idcard,6,5),SUBSTRING(idcard,11,2),SUBSTRING(person.idcard,13,1))AS 'idcard',
CONCAT(ctitle.titlename,' ',person.fname,' ',person.lname) AS 'ชื่อ - นามสกุล',
CONCAT(getAgeYearNum(person.birth,@getagedate)) AS 'อายุ (ปี)',
CONCAT("'",DATE_FORMAT(person.birth,'%d/%m/'),DATE_FORMAT(person.birth,'%Y')+543) AS 'วัน เดือน ปี เกิด',
person.occupa AS 'รหัสอาชีพ',
coccupa.occupaname AS 'อาชีพ',
CONCAT("'",house.hno) AS 'บ้านเลขที่',
village.villno AS 'หมู่ที่',village.villname AS 'หมู่บ้าน'
FROM person
LEFT OUTER JOIN house ON person.hcode=house.hcode AND house.pcucode=person.pcucodeperson
LEFT OUTER JOIN ctitle ON person.prename=ctitle.titlecode
LEFT OUTER JOIN village ON house.villcode=village.villcode AND village.pcucode=house.pcucode
LEFT OUTER JOIN cright ON person.rightcode = cright.rightcode
LEFT OUTER JOIN persondeath ON person.pid = persondeath.pid AND person.pcucodeperson = persondeath.pcucodeperson
LEFT OUTER JOIN coccupa ON coccupa.occupacode=person.occupa
WHERE SUBSTRING(house.villcode,7,2)<>'00' and persondeath.pid IS NULL
AND person.typelive IN ('0','1','3')
AND GetAgeYearNum(person.birth,@getagedate) BETWEEN '15' AND '59'
GROUP BY person.pid
ORDER BY village.villno,house.hno;