显示如下:
姓名 数学 语文 英语 汇总(求和)
xx 52 65 95
tt 86 71 82
yy 86 71 82总成绩 52+86+86
写一个sql语句,对该人的成绩汇总,最后,对一课的成绩进行汇总求和。
select 姓名 ,数学 , 语文 ,英语 姓名+数学+语文+英语
from tab;
还有针对我们从很多数据里面筛选出来的。
如:select column as c from tab;那么 我们求和时,用c 求和或者相加 怎么不行呢?
麻烦说详细点。谢谢。
姓名 数学 语文 英语 汇总(求和)
xx 52 65 95
tt 86 71 82
yy 86 71 82总成绩 52+86+86
写一个sql语句,对该人的成绩汇总,最后,对一课的成绩进行汇总求和。
select 姓名 ,数学 , 语文 ,英语 姓名+数学+语文+英语
from tab;
还有针对我们从很多数据里面筛选出来的。
如:select column as c from tab;那么 我们求和时,用c 求和或者相加 怎么不行呢?
麻烦说详细点。谢谢。
select column as c from tab);
不行?
姓名 数学 语文 英语 汇总(求和)
xx 52 65 95 212
tt 86 71 82
yy 86 71 82 总成绩 224 207 259
想这种格式显示的sql语句。楼上的说得是对的。但是不是我想要的。还是要感谢您
---------- ---------- ---------- ----------
xx 90 23 67
tt 60 73 87
yy 40 83 77
SQL> select t1.*,math+chs+eng as total
2 from t1
3 union all
4 select 'sum',sum(math),sum(chs),sum(eng),null
5 from t1;NAME MATH CHS ENG TOTAL
---------- ---------- ---------- ---------- ----------
xx 90 23 67 180
tt 60 73 87 220
yy 40 83 77 200
sum 190 179 231
---------- ---------- ---------- ----------
张三 90 95 85
李四 80 70 90
王五 80 100 70SQL> select name "姓名",语文,数学,英语,
2 sum(语文+数学+英语)over(partition by name) "总成绩"
3 from temp_1
4 union all
5 select '汇总',sum(语文),sum(数学),sum(英语),sum(总成绩)
6 from (select name "姓名",语文,数学,英语,
7 sum(语文+数学+英语)over(partition by name) "总成绩"
8 from temp_1)
9 /姓名 语文 数学 英语 总成绩
---------- ---------- ---------- ---------- ----------
张三 90 95 85 270
李四 80 70 90 240
王五 80 100 70 250
汇总 250 265 245 760SQL>