Oracle横向纵向汇总

有一张表test 如下, (NO 学生编号 ,cj 成绩)

NO name KM CJ

001 张三 语文 80

001 张三 数学 86

001 张三 英语 75

002 李四 语文 78

002 李四 数学 85

002 李四 英语 78

写了以下语句来算每项个科目的总分,

1 select decode(grouping(name),1,‘总分‘,name) 姓名,
2 sum(decode(km, ‘数学‘,cj,0)) 数学,
3 sum(decode(km, ‘英语‘,cj,0)) 英语,
4 sum(decode(km, ‘语文‘,cj,0)) 语文,
5 sum(cj) 总成绩
6 from test group by rollup(name)

结果如下:

姓名 数学 英语 语文 总成绩

李四  85   78    78    241

张三  86   75    80    241

总分  171  153  158   482

时间: 2024-10-23 03:33:07

Oracle横向纵向汇总的相关文章

oracle exp 问题汇总

1. 用sys as sysdba方式连接数据库进行exp/imp windows 环境: exp 'sys/[email protected] as sysdba' file=exp.dmp log=exp.log  #注意这里是单引号 unix和linux环境 exp \'sys/[email protected] as sysdba\' file=exp.dmp log=exp.log #这里用\做转义字符,对‘进行转义 #如果不是按照上面方式执行exp导出,会报错 #LRM-00108

小谷实战Jquery(三)--横向纵向菜单

每天一个实例看来速率有点低了,今天要多做一点.好了,这次实现的是一个简单的菜单,Web项目中常见的菜单有两种:纵向和横向.从纵向说起,看一下最初的代码. html代码实现最基本的菜单与子菜单 <span style="font-size:18px;"><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD

自定义RecyclerView 支持 横向纵向,滑动删除Item

项目源码已经放上去:https://github.com/xufeifandj/SwipeRecyclerView 本项目直接 继承于RecyclerView 本身就支持 横向纵向的 列表. 具体代码请看代码. package com.ferris.holeswipeview; import android.content.Context; import android.support.v7.widget.RecyclerView; import android.util.AttributeSe

Javascript横向/纵向合并单元格TD

在报表系统中,涉及“HTML的TD单元格的合并”恐怕为数不少. 比如,从DB查得数据并经过后台的整理后,可能是这样的: Table1     JOB TOTAL SAL INDEX EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO 1 ANALYST 6000 1 7788 SCOTT ANALYST 7566 4/19/1987 3000.00   20 1 ANALYST 6000 2 7902 FORD ANALYST 7566 12/3/1981

[数据库] Oracle单表查询总数及百分比和数据横向纵向连接

这是最近项目关于SQL语句的,本文简单记录并总结以下几个知识点: 1.如何统计一张表中某个字段的总数,如不同"专业"的学生数及所占百分比: 2.如何联系另一张表进行查询某个字段的总数及百分比: 3.简单介绍decode防止分母为0和trunc保留小数位数等函数: 4.通常复杂的SQL语句会涉及到查询结果横向连接和纵向连接,这里进行介绍. 最近买了本<Oracle查询优化改写技巧与案例·有教无类 落落>,推荐大家也阅读下.后面我也会补充一些相关数据的知识,希望对大家有所帮助吧

jQuery实现横向纵向下拉菜单

学习javascript中有提到构建自己的javascript库,比如jQuery,这些库中包含自己常用的方便的小函数,这些函数可以让自己的代码更加清晰易懂,而且当别人调用时也很容易理解,当然编写库时需要注意一些问题,比如大小写.括号引号.换行等,这些为jQuery学习提供了一些基础,jQuery的学习主要通过几个实例来了解jQuery的应用,通过查看API运用特定方法实现自己的效果,它让网页动了起来.通过代码如何实现一个横向和纵向下拉菜单的效果. 首先在HTML中通过ul和li表示页面中的菜单

【JQuery】——横向纵向下拉菜单

在学习jQuery的过程中,遇到项目中最常用到的下拉菜单,本着高效的原则,在此总结一下横向和纵向下拉菜单的实现效果,形成自己的小类库,以便自己在项目过程中能够方便的调用. HTML部分: 引用menu.css.jquery.js(已经封装好的)和menu.js文件 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd&quo

oracle数据库报表汇总函数grouping

前两天同事问一个oracle使用grouping完成一个统计报表的功能,这个函数帅呆了.开发分组报表直接一个SQL就搞定. grouping(columnA)函数的意思:当前行如果是由rollup汇总产生的,那么columnA这个字段值为1否则为0 元数据: 通过grouping查询后的数据: sql: select decode(grouping(f_line)+grouping(f_workarea),1,'小计',2,'总计',f_workarea) f_workarea, decode(

flutter 跑马灯横向纵向滚动

跑马灯滚动在项目中经常会用到,滚动有水平滚动和上下滚动两种方式 1.横向滚动 import 'dart:async'; import 'package:flutter/material.dart'; class YYMarquee extends StatefulWidget { Duration duration; // 轮播时间 double stepOffset; // 偏移量 double paddingLeft; // 内容之间的间距 List<Widget>children = [