首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

自认比较恶心的

2012-02-03 
自认比较恶心的,高手进!现在要对表M中的数据进行全部和单独统计;其中有一统计类型对应表S,不同类型(ID)时,

自认比较恶心的,高手进!
现在要对表   M   中的数据进行全部和单独统计;其中有一统计类型   对应表   S,不同类型(ID)时,对应的表不同:
如   1对应表A   ,2对应表B,   3无对应表,A和B表结构相同,且A、B表的ID与S   表的
S-ID   相对应,S表的   ID   与   M   表的   M-ID   相对应,现在要全部进行统计时,类型有对应的表则统计出   A   或B   表的   ID   ,无则显示空该如何写一条SQL?


[解决办法]
楼主把表结构列出来。
[解决办法]
--试试这个
SELECT M.form_type,S.form_name,M.flow_id,M.flow_name,M.custom_id,
SUM(CASE M.form_type
WHEN 1 THEN SELECT SUM(VALUE)FROM A WHERE A.ID=M.custom_id
WHEN 2 THEN SELECT SUM(VALUE)FROM B WHERE B.ID=M.custom_id
WHEN 3 THEN 0 END)AS Total
FROM M INNER JOIN S ON M.form_type=S.form_type
GROUP BY M.form_type,S.form_name,M.flow_id,M.flow_name,M.custom_id
ORDER BY M.form_type,S.form_name,M.flow_id,M.flow_name,M.custom_id

热点排行