idgroupdaymonthyearamount1amount2amount3
1 a 1 1 2009 144 33 55
2 a 2 1 2009 237 54 67
3 a 3 1 2009 100 17 13
4 a 4 1 2009 98 88 112
5 a 5 1 2009 10 94 44
6 b 1 1 2009 50 244 86
7 b 2 1 2009 30 154 24
8 b 3 1 2009 12 667 5
9 b 4 1 2009 42 231 66
10 b 5 1 2009 15 134 90
11 c 1 1 2009 16 88 120
12 c 2 1 2009 18 99 53
13 c 3 1 2009 19 34 123
14 c 4 1 2009 21 15 17
15 c 5 1 2009 49 67 112
สมมติว่ามีข้อมูลในตารางอย่างข้างบนนี้นะคะ
ถ้าจะ SUM แยกตาม group โดยสรุปว่าในแต่ละเดือน มีจำนวนทั้งหมดเท่าไหร่ เช่น group a ก็ เอา amount1+amount2+amount3
$sql="SELECT SUM(amount1) AS a1, SUM(amount2) AS a2, sum(amount3) AS a3 FROM table WHERE group='a' AND month='1' AND year='2009'";
$result=mysql_query($sql);
while ($row=mysql_fetch_array($result)) {
$total_a=$row['a1']+$row['a2']+$row['a3'];
}
ประมาณนี้ มันดู make sense มั้ยคะ หรือว่าจะมีวิธีที่ดีกว่านี้ และไม่กินรีสอร์ซเครื่องมาก เพราะมันมีเป็นหมื่นๆ เรคอร์ด