select * from emp;
—————–存储过程————————
–定义
create[or replace] procedure 存储过程名称(参数名 [in]/out 数据类型)
is/as
begin
–逻辑表达式
end [存储过程名称];
–定义存储过程计算年薪,并答应输出
create or replace procedure proc_salyears(v_no in number)
is
sal_years number(9,
这一篇属于加强版,问题和sql语句如下。
创建users表,设置id,name,gender,sal字段,其中id为主键
drop table if exists users;
create table if not exists users(
id int(5) primary key auto_increment,
name varchar(10) unique not null,
gender varchar(1) not null,
sal int(5) not nu
因为要返回表对象,无论后续用什么方法返回,都先要声明全局type;并且,字段变量类型要为object,不能为record:
create or replace type t_test as object(
EMPNO NUMBER(4),
ENAME VARCHAR2(10),
JOB VARCHAR2(9),
SAL NUMBER(7,2)
);
create or replace type t_test_table as table of t_test;
至于返回表
Oracle查询语句
select * from scott.emp ;
1.–dense_rank()分析函数(查找每个部门工资最高前三名员工信息)
select * from (select deptno,ename,sal,dense_rank() over(partition by deptno order by sal desc) a from scott.emp) where a<=3 order by deptno asc,sal desc ;
结果:
–rank()分析
代码如下: –执行顺序 From Where Select select * from (select sal as salary,comm as commission from emp ) x where salary<5000 –得出 Name Work as a Job select ename +’ Work as a’+job as msg from emp where deptno=10 –如果员工工资小于2000返回UnderPaid 大于等于4k 返回OverPaid 之间
代码如下: –程序员们在编写一个雇员报表,他们需要得到每个雇员当前及历史工资状态的信息, –以便生成报表。报表需要显示每个人的晋升日期和工资数目。 –如果将每条工资信息都放在结果集的一行中,并让宿主程序去格式化它。 –应用程序的程序员都是一帮懒人,他们需要在每个雇员的一行上得到当前 –和历史工资信息。这样就可以写一个非常简单的循环语句。 —示例: create table salaries ( name nvarchar(50) not null, sal_date date not null,
1.列出至少有一个员工的所有部门。
分析:每个部门有多少员工 —— 根据部门编号进行分组
select deptno,count(*) from emp group by deptno having count(*) >= 1;
2.列出薪金比“SMITH”多的所有员工。
分析:先查询出SMITH工资 : select sal from emp where ename=’SMITH';
select * from emp where sal > (s
MySQL重复查询
文章目录MySQL重复查询1. 基本查询回顾2. 多表查询3. 自连接4. 子查询
1. 基本查询回顾
查询工资高于500或岗位为MANAGER的雇员,同时还要满足他们的姓名首字母为大写的J
select * from EMP where (sal>500 or job='MANAGER') and ename like 'J%';
按照部门号升序而雇员的工资降序排序
select * from EMP order by deptno, sal desc;
使用年薪
伪列rownum
rownum是查询返回的结果集中行的序号,可以使用它来限制查询返回的行数
从emp表中查询薪水排在前三位的记录
select * from(
select * from emp order by sal desc
)
where rownum<=3
结果如下:
原创文章 4获赞 4访问量 62
关注