楼主:
cutekid (可爱小孩子)
2014-05-23 17:36:30select t1.ID,minKind,min(TYPE) as minType,sumVal
from table as t1
inner join (
select ID,min(KIND) as minKind,sum(VAL) as sumVal
from table
group by ID
) as t2 on t1.ID = t2.ID
where t1.KIND = minKind
group by t1.ID,minKind,sumVal
※ 引述《bulmungtw (Lance)》之铭言:
: 数据库名称:MS SQL
: 数据库版本:9.0.4035
: 内容/问题描述:
: http://i.imgur.com/kR5frSU.png
: 续上回得到高手hhomerun漂亮解后又碰到问题了
: select ID, KIND, TYPE, VAL
: from table
: 出现出来左边这个结果
: 上次的作法是
: SELECT ID
: ,min(TYPE) AS TYPE
: ,SUM(VAL) AS VAL
: FROM table
: GROUP BY ID
: 所以先改成试试
: SELECT ID
: ,min(KIND) AS KIND
: ,min(TYPE) AS TYPE
: ,SUM(VAL) AS VAL
: FROM table
: GROUP BY ID
: 不过结果会变成
: http://i.imgur.com/NRGsTdB.png
: ORZ...原本还说同ID只会有上次那种状况,弄好没过一周又有例外状况
: 若想要改成第一张图的样子怎么改会比较好呢?
: 谢谢!!