日期:2014-05-17  浏览次数:20600 次

SQL 分组查询
有表A
id   answerid   answerText   category   title   order
1     nk01        das           3        kkk      0
2     nk02                      5        aaa      0
3     nk03                      6        bbb      0
3     nk03-1                    6        ccc      0
4     nk04                      7        eee      1
4     nk04-1                    7        fff      3
4     nk04-2                    7        ggg      2

需要得到结果集
id   result 
1    nk01:das
2    nk02:aaa
3    nk03:bbb、nk03-1:ccc
4    nk04:eee、nk04-2:ggg、nk04-2:fff

说明: 当category=3的时候 result字段的值为answerid字段值 + ':' + answerText字段值
       当category=5的时候 result字段的值为answerid字段值 +  ':'+ title字段值
       当category=6的时候 根据id分组数据数来拼接字符串 result字段的值为answerid字段值 +  ':' + title         字段值 + "、" + answerid字段值 +  ':' + title字段值....根据该组数据数
       当category=7的时候 id分组数拼接字符串,与=6类似,但是字符串拼接顺序需要根据order字段从小到大进行拼接。 求SQL语句
       

SQL