不知道做,求帮忙
一张表中有一个字段,有四种选择,难度一,难度二,难度三,难度四,怎样才能将着四种选择查出来并做作为一个视图的标头
[解决办法]
举个例子,实际说明一下你的表结构,数据内容,和想要做出的视图是什么样的。
[解决办法]
- SQL code
GOIF OBJECT_ID('TB')IS NOT NULLDROP TABLE TBGOCREATE TABLE TB(NAME VARCHAR(10),NANDU VARCHAR(10),VALUE INT)GOINSERT TBSELECT '张三','难度一',18 UNION ALLSELECT '李四','难度二',23 UNION ALLSELECT '李四','难度三',12 UNION ALLSELECT '王五','难度一',16 UNION ALLSELECT '王五','难度二',11 UNION ALLSELECT '张三','难度四',9 UNION ALLSELECT '张三','难度二',15 UNION ALLSELECT '李四','难度四',11 gocreate view v_name asselect NAME AS 姓名, isnull(sum(case when NANDU='难度一' then VALUE end),0) as 难度一, isnull(sum(case when NANDU='难度二' then VALUE end),0) as 难度二, isnull(sum(case when NANDU='难度三' then VALUE end),0) as 难度三, isnull(sum(case when NANDU='难度四' then VALUE end),0) as 难度四from TB group by NAMEgoselect * from v_name/*姓名 难度一 难度二 难度三 难度四李四 0 23 12 11王五 16 11 0 0张三 18 15 0 9*/--给你写了一个例子
[解决办法]
楼主是想把行数据转为列数据吗,是的话,如果是SQL2005 可以用 Pivot 语句。