这是一个查询结果,我想在这个查询结果里再加入一条记录,就是求PM为总计的和,怎么解决,在线苦等 JGMC JCMC PM SB HJ RK
1 白银市靖远县地方税务局 省级行业统筹 总计 867174 867174 0
2 白银市靖远县地方税务局 省级行业统筹 基本养老保险费 867174 867174 0
3 白银市靖远县地方税务局 县(区)级 总计 1654710.54 1623038.42 0
4 白银市靖远县地方税务局 县(区)级 失业保险费 69848.86 69848.86 0
5 白银市靖远县地方税务局 县(区)级 生育保险费 2998.31 2998.31 0
6 白银市靖远县地方税务局 县(区)级 基本医疗保险费 129025.35 123185.35 0
7 白银市靖远县地方税务局 县(区)级 基本养老保险费 1326690.69 1300858.57 0
8 白银市靖远县地方税务局 县(区)级 工伤保险费 100798.47 100798.47 0
9 白银市靖远县地方税务局 县(区)级 大病 25348.86 25348.86 0
1 白银市靖远县地方税务局 省级行业统筹 总计 867174 867174 0
2 白银市靖远县地方税务局 省级行业统筹 基本养老保险费 867174 867174 0
3 白银市靖远县地方税务局 县(区)级 总计 1654710.54 1623038.42 0
4 白银市靖远县地方税务局 县(区)级 失业保险费 69848.86 69848.86 0
5 白银市靖远县地方税务局 县(区)级 生育保险费 2998.31 2998.31 0
6 白银市靖远县地方税务局 县(区)级 基本医疗保险费 129025.35 123185.35 0
7 白银市靖远县地方税务局 县(区)级 基本养老保险费 1326690.69 1300858.57 0
8 白银市靖远县地方税务局 县(区)级 工伤保险费 100798.47 100798.47 0
9 白银市靖远县地方税务局 县(区)级 大病 25348.86 25348.86 0
用emp表举个例子:
SQL> select empno, ename, sal from emp
2 union
3 select null empno, null ename, max(sal) sal from emp; EMPNO ENAME SAL
---------- ---------- ----------
7369 SMITH 800
7499 ALLEN 1600
7521 WARD 1250
7566 JONES 2975
7654 MARTIN 1250
7698 BLAKE 2850
7782 CLARK 2450
7788 SCOTT 3000
7839 KING 5000
7844 TURNER 1500
7876 ADAMS 1100 EMPNO ENAME SAL
---------- ---------- ----------
7900 JAMES 950
7902 FORD 3000
7934 MILLER 1300
500015 rows selected.
from tb
union all
select '总计' JGMC,null,sum(PM) PM,null,null,null
from tb;
---------- ---------- ----------
A 2 100
A 3 200
B 4 200SQL> SELECT DECODE(GROUPING(NAME),1,'总计',name) name ,SUM(SALARY) FROM T_VALUE
2 GROUP BY rollup(NAME);NAME SUM(SALARY)
---------- -----------
A 300
B 200
总计 500SQL>
select "总计" as JGMC , "总计" as JCMC, sum(pm)as pm
只要保持 列数相等,每列数据类型的一致性 或者兼容就ok啦
union 和union all 区别
union 会去掉重复数据以及会重新排序 union all 不会
应此union all的效率高些
加上你要的那行数据就行了。