select concat(p.pname,' ',p.fname,' ',p.lname) as name,d.*,i.name as icd9_name
from doctor_operation d
left outer join ovst o on o.vn=d.vn
left outer join patient p onp.hn=o.hn
left outer join icd9cm1 i on i.code=d.icd9
where o.vstdate between 'ช่วงวันที่' and 'วันที่'
group by d.vn
ลองไปใช้ดูว่าตรงตามที่ต้องการหรือเปล่าค่ะ