SELECT person.pid
,visitdate AS 'วันที่รับบริการ'
,ctitle.titlename as 'คำนำหน้าชื่อ'
,fname 'ชื่อ'
,lname 'นามสกุล',
#,diagcode 'โรคเรื้อรัง',
max(case when personchronic.chroniccode = 'I10' then "/" else ' ' end) as 'ความดันโลหิตสูง',
max(case when personchronic.chroniccode between 'E10' and 'E15' then "/" else ' ' end) as 'เบาหวาน'
,IF(labresultdigit>='90' ,labresultdigit,'-')as 'ไตทำหน้าที่ปกติ'
,IF(labresultdigit BETWEEN '60' AND '89',labresultdigit,'-') as 'ไตเริ่มเสื่อม' 
,IF(labresultdigit BETWEEN '30' AND '59',labresultdigit,'-') as 'โรคไตระดับปานกลาง' 
,IF(labresultdigit BETWEEN '15' AND '29',labresultdigit,'-') as 'โรคไตขั้นรุนแรง '
,IF(labresultdigit <='14',labresultdigit,'-') as 'ไตวายเรื้อรังระยะสุดท้าย'  
from visitdiag vd
INNER JOIN visit v on vd.visitno=v.visitno
INNER JOIN visitlabchcyhembmsse vs on v.visitno=vs.visitno
INNER JOIN person on v.pid=person.pid
INNER JOIN ctitle ON person.prename = ctitle.titlecode
LEFT JOIN personchronic ON personchronic.pcucodeperson = person.pcucodeperson AND personchronic.pid = person.pid
WHERE labcode='chegfr'
AND (LEFT(diagcode,4) BETWEEN 'E10' AND 'E15'
OR LEFT(diagcode,4) BETWEEN 'I10' AND 'I15')
AND (v.visitdate BETWEEN '2014-10-01' AND '2015-09-30')
GROUP BY pid
ORDER BY visitdate,pid;