group by 的这个问题大家不知有没有碰到
我们知道我们通常使用的   语句是: 
 SELECT   AREA_ID,NUM 
 FROM   A 
 WHERE   AREA_ID   IN   (1,2,3,4) 
 GROUP   BY    
 AREA_ID        
 字段解释;   AREA_ID为   地域代码,NUM为数量 
 假如查询的结果是   
 AREA_ID	NUM 
 1	40 
 2	50 
 3	60 
 4	70   
 而事实上,AREA_ID   为1,2的时候表示   上海,为3,4的时候表示北京 
 我要得到的结果应该是   
 地区      NUM 
 上海      90          
 北京      130 
 该怎么办?   是不是需要另外建一个表,然后搞个子查询才能得到我要的结果?
------解决方案--------------------
SELECT (case when AREA_ID in(1,2) then  '上海 ' else  '北京 ' end),sum(NUM) 
 FROM A 
 WHERE AREA_ID IN (1,2,3,4) 
 GROUP BY  
 (case when AREA_ID in(1,2) then  '上海 ' else  '北京 ' end) order by sum(NUM)