น่าจะได้ครับ เอาไปประยุกต์เอาครับ..
คำสั่งน่าจะประมาณนี้ครับ.. แล้วไป sum รายการต่างๆ ตามที่ต้องการครับ...
select vstdate,sum(rcpt_money),pttype,
(if(pttype = "10",rcpt_money,0)) as `Cash`,
(if(pttype = "89",rcpt_money,0)) as `UC`,
(if(pttype in("34","35""36"),rcpt_money,0)) as `SSN`,
(if(pttype = "23",rcpt_money,0)) as `ACC_23` ,
(if(pttype = "30",rcpt_money,0)) as `Acident`,
(if(pttype = "20",rcpt_money,0)) as `ACC_20`,
(if(pttype = "22",rcpt_money,0)) as `ACC_22` ,
(if(pttype = "37",rcpt_money,0)) as `ACC_37` ,
(if(pttype = "88",rcpt_money,0)) as `ACC_88` ,
from vn_stat
where vstdate="2012-07-12"
group by vstdate,pttype order by vstdate,pttype
ลองไปประยุกต์ดูครับ... ถ้าไม่ใช่ที่ต้องการ รอ อ.ท่านอื่นๆครับผม..