ORACLE题目考考你

1,现有一个公司的部门及雇员的数据库,由下面三个表组成:
a 雇员(雇员号,姓名,年龄,地址,薪水)
b 部门(部门号,部门名,部门经理号)
c 工作(雇员号,部门号,工作年限)
用PL/SQL语句查询和其部门经理住址相同的员工的姓名及经理姓名?


[color=blue]雇员
create table employee(
empid char(3) primary key,
empname varchar2(10) not null,--雇员姓名不能为空
age number(2) check (age between 18 and 55),--雇员的年龄介于18到55之间
address varchar2(20),
sal number(5) check (sal between 1000 and 50000) --薪水取1000到50000之间整数
);

--部门
create table dep(
deptno char(3) primary key ,
dname varchar2(20) not null,--部门名不能为空
mgr char(3) references employee(empid)
);

--工作
create table work(
empid char(3) references employee(empid),
deptno char(3) references dep(deptno),
worktime number(1),
primary key (empid,deptno)
);[/color]


[color=red]select d.empname,c.leader from (select deptno,empname as leader,address from employee a,dep b
where a.empid = b.mgr) c,employee d,work e
where c.deptno = e.deptno and e.empid = d.empid
and d.address = c.address and c.leader <> d.empname;[/color]


2,现有关系数据表,其中城市CITIES(ID,NAME,CUNTORY),地区AREAS(ID,NAME,CITY_ID),订单ORDERS(ID,DATE,CUSTOMER_ID,USER_ID,AMOUNT,QUANTITY,AREAS) ,用户USERS(ID,NAME,SEX,ADDRESS,TELEPHONE)请编写一个视图数据为,汇总每个业务,每个地区和每个城市每个月的订单数、订单金额
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值