看了坛里关于行转列的问题,用里面给的答案测试的时候出了一大堆问题:
oracle:10g
表:ID COURSE GRADE
101 yuwen 60
102 shuxue 65
101 yuwen 90
102 shuxue 95
下面是对答案的测试:
问题:1。decode参数中第一个是与搜索值比较的值或表达式,紧接是搜索值,再跟着是等于时的结果,最后的那是不等于的结果,为什么我测试结果中显示的与函数的说明相反
2。为什么不用max函数时,COURSE为shuxue的结果也显示
3。用max函数之后为啥只显示了一条结果
4。select 语句中加上id 字段后为什么会报错,这个错误该怎么解决?
问题很多,分很少,望大虾们不要嫌分少,多给点解答,谢谢!
oracle:10g
表:ID COURSE GRADE
101 yuwen 60
102 shuxue 65
101 yuwen 90
102 shuxue 95
下面是对答案的测试:
问题:1。decode参数中第一个是与搜索值比较的值或表达式,紧接是搜索值,再跟着是等于时的结果,最后的那是不等于的结果,为什么我测试结果中显示的与函数的说明相反
2。为什么不用max函数时,COURSE为shuxue的结果也显示
3。用max函数之后为啥只显示了一条结果
4。select 语句中加上id 字段后为什么会报错,这个错误该怎么解决?
问题很多,分很少,望大虾们不要嫌分少,多给点解答,谢谢!
2 没加什么处理肯定是显示的
3 max 就是取最大的 肯定显示一条
4 你的id肯定没在group by 里或者不在聚合函数处理
显然不能用SUM