oralce简单语法练习 一

发布 2021-05-11 10:30:28 阅读 2149

create database oracledb;

create table dept

deptno int not null,dname varchar(14),loc varchar(13)

alter table dept add constraint pk_dept primary key (deptno);

insert into dept values (10, 'accounting', new york');

insert into dept values (20, 'research', dallas');

insert into dept values (30, 'sales', chicago');

insert into dept values (40, 'operations', boston');

create table emp

empno int not null,ename varchar(10),job varchar(9),mgr int,hiredate date,sal decimal,comm decimal,deptno int

alter table emp add constraint pk_emp primary key (empno);

insert into emp

values (7369, 'smith', clerk', 7902, '1980-12-17', 800, null, 20);

insert into emp

values (7499, 'allen', salesman', 7698, '1981-02-20', 1600, 300, 30);

insert into emp

values (7521, 'ward', salesman', 7698, '1981-02-22', 1250, 500, 30);

insert into emp

values (7566, 'jones', manager', 7839, '1981-04-02',2975, null, 20);

insert into emp

values (7654, 'martin', salesman', 7698, '1981-09-28', 1250, 1400, 30);

insert into emp

values (7698, 'blake', manager', 7839, '1981-05-01',2850, null, 30);

insert into emp

values (7782, 'clark', manager', 7839, '1981-06-09', 2450, null, 10);

insert into emp

values (7788, 'scott', analyst', 7566, '1987-04-19', 3000, null, 20);

insert into emp

values (7839, 'king', president', null,'1981-11-17',5000, null, 10);

insert into emp

values (7844, 'turner', salesman', 7698, '1981-09-08',1500, 0, 30);

insert into emp

values (7876, 'adams', clerk', 7788,'1987-05-23',1100, null, 20);

insert into emp

values (7900, 'james', clerk', 7698,'1981-12-03',950, null, 30);

insert into emp

values (7902, 'ford', analyst', 7566, '1981-12-03',3000, null, 20);

insert into emp

values (7934, 'miller', clerk', 7782, '1982-01-23', 1300, null, 10);

create table salgrade

grade int,losal int,hisal int

alter table salgrade add constraint pk_grade primary key (grade);

insert into salgrade values (1,700,1200);

insert into salgrade values (2,1201,1400);

insert into salgrade values (3,1401,2000);

insert into salgrade values (4,2001,3000);

insert into salgrade values (5,3001,9999);

1. 列出至少有一个员工的所有部门(部门编号)。

select

from emp,dept

where

group by

h**ing count(>=1

2. 列出薪金比“smith”多的所有员工。

select

from emp

where >

select from emp where 'smith')

3. 列出所有员工的姓名及其直接上级的姓名。

select as '下属名称', as '上司名称'

from emp as emp1,emp as emp2

where

4. 列出受雇日期早于其直接上级的所有员工。

select

from emp as emp1,emp as emp2

where

and <

5. 列出部门名称和这些部门的员工信息,同时列出那些没有员工的部门

select

from dept left join emp

on = 6. 列出所有“clerk”(办事员)的姓名及其部门名称。

select

from emp left join dept

on where 'clerk'

7. 列出最低薪金大于1500的各种工作。

select

from emp

where >=1500

group by

8. 列出在部门“sales”(销售部)工作的员工的姓名,假定不知道销售部的部门编号。

select

from emp

where

select from dept where 'sales')

9. 列出薪金高于公司平均薪金的所有员工。

select

from emp

where >

select **g( from emp)

10. 列出与“scott”从事相同工作的所有员工。

select

from emp as emp1

where from emp where ename='scott')

11. 列出薪金等于部门30中员工的薪金的所有员工的姓名和薪金。

select

from emp as emp1

-where not in (select from emp where '30')

where not exists (select from emp as emp2 where '30')

12. 列出薪金高于在部门30工作的所有员工的薪金的员工姓名和薪金。

select

from emp

group by

h**ing >(select max(

from emp where '30')

13. 列出在每个部门工作的员工数量、平均工资和平均服务期限。 (薪金=工资+奖金)

select as '员工数量',**g( as '平均工资',**g(datediff(year, as '服务时间(年)'

from emp as e

group by

列出所有员工的姓名、部门名称和工资。

select as '工资'

from emp as e

列出所有部门的详细信息和部门人数。

select

from dept as d,emp as e

where

group by

列出各种工作的最低工资。

select min(

from emp as e

group by

英语简单语法

1.英语语法包括词法和句法。词法 名词 noun 动词 verb 形容词 adjective 冠词 article 数词 numeral 介词 preposition 代词 pronoun 连词 conjunction 副词 adverb 等词类。句法 一般规则的用法和特殊规则的用法。2.主语sub...

韩语 简单语法

用在时间名词后,表示某件事情发生以后过了一段时间又发生,相当于 时隔多久后 多久以来 多长时间之内 例句 花样爷爷 时隔半年回归。结婚十年以来不久前第一次和婆婆大吵了一架。10 50cm 这次降雪时隔10年再次达到了50cm的强雪记录。拓展 和 的比较。表示某种行为或状态从开始到结束的时间长短。表示...

简单法语语法

简单法语语法 词法。1.名词 如同英语名词,法语名词有单复数之分,复数一般在单数词尾加s。另,法语名词还有阴 阳性之分,这是其特殊之处。阴性一般是在阳性名词词尾加e而成。通常表示人和动物的名词按其自然性别分阴 阳性 表示物之名词的阴 阳性,系约定俗成。法语名词。阳性阴性。单数复数单数复数。gar o...