假定我们如下表具有:SQL申请合计平均有条件
index value 1 55 2 66 3 77 1 88 3 99
如何可以总结(值)时索引= 1个或索引= 3,并且平均(值)当索引= 2的一个选择声明?
假定我们如下表具有:SQL申请合计平均有条件
index value 1 55 2 66 3 77 1 88 3 99
如何可以总结(值)时索引= 1个或索引= 3,并且平均(值)当索引= 2的一个选择声明?
轻松:
SELECT index, CASE WHEN index IN (1, 3) THEN SUM(value) ELSE AVG(value) END
FROM yourTable
GROUP BY index
谢谢,我以前不知道有病例陈述。 – karpar 2012-03-19 16:39:25
不客气! – 2012-03-19 18:03:07
SELECT sum(value) as agg,
'S' as aggregateType
FROM DaTAble
WHERE index IN (1, 3)
UNION ALL
SELECT avg(value) as agg,
'A' as aggregateType
FROM DaTAble
WHERE index = 2
什么是您预期的结果(以表格形式)? – 2012-03-19 15:23:47