分组查询 分组查询通常和聚合函数结合使用,查询条件中每个XXX就以XXX为分组的条件: 格式:每个A的平均B select avg(B) from 表名 group by A; having 在where后面只能写普通字段的条件:在having后面写聚合函数的条件:having写在group by的后面,where写在最前面: 案例: 查询每个部门的平均工资,只查询平均工资大于2000的. select deptno,avg(sal) a from emp group by deptno hav
--查询并打印员工的姓名和薪水 --set serveroutput on /* 1.光标的属性 %found:假设取到了记录就是true否则是false: %notfound: */ declare --定义一个光标 cursor cemp is select ename,sal from emp; --为光标定义相应的变量 pename emp.ename%type; psal emp.sal%type; begin --打开光标 open cemp; loop --取一条记录 into后面
题目描述 统计出当前各个title类型对应的员工当前薪水对应的平均工资.结果给出title以及平均工资avg.CREATE TABLE `salaries` (`emp_no` int(11) NOT NULL,`salary` int(11) NOT NULL,`from_date` date NOT NULL,`to_date` date NOT NULL,PRIMARY KEY (`emp_no`,`from_date`));CREATE TABLE IF NOT EXISTS "titl
// 员工类 public class Employee { private String name; private int id; private double salary; public void show() { System.out.println(name+"\t"+id+"\t"+salary); } public Employee() { } public Employee(String name, int id, double salary)
create or replace function ht_gettopdeptNAME(deptid in varchar) return varchar2 is r ); c int; m ); r_f ); begin select a.tree_level_num, a.parent_node_name,a.tree_node into c, r,m from pstreenode a where a.tree_name = 'DEPT_SECURITY' and a.tree_node
create or replace function fn_DeptWholeName2(objectid in number) return nvarchar2 is wholename nvarchar2(500); beginselect to_char(replace(wm_concat(OBJNAME),',','.'))a into wholename from (select * from v_organddept2 ostart with o.objid=objectidconn
二.操作题 1.创建视图emp_view2,包含员工编号,姓名,所在部门名称和收入. mysql> create or replace view emp_view2 -> as -> select e.员工编号,e.姓名,d.部门名称,s.收入 -> from employees e , departments d, salary s -> where e.员工编号=s.员工编号 and e.员工部门号=d.部门编号; Query OK, 0 rows affected (
--根据每个部门来统计部门工资总和 select deptid, sum(sal) 工资合计 from emp group by deptid; --根据每个部门来统计部门工资总和select deptid, 工资合计, sum(工资合计) over() as 总合计 from (select deptid, sum(sal) 工资合计 from emp group by deptid) x; select deptid 部门, 工资合计, 总