根据emp表写下列查询代码

合集下载

多表查询sql语句

多表查询sql语句

多表查询sql语句

多表查询sql语句

--解锁SCOTT⽤户

2 alter user scott account unlock

3 --检索指定的列

4 select job,ename,empno from emp;

5 --带有表达是的select⼦句

6 select sal*(1+0.2),sal from emp;

7 --显⽰不重复的记录

8 select distinct job from emp;

9 --⽐较筛选 <> =

10 select empno,ename,sal from emp where sal>1000;

11 select empno,ename,JOB from emp;

12 select empno,ename,sal from emp where sal <>all(3000,950,800);

13 --特殊关键字筛选

14 --like 模糊查询

15 select empno,ename,job from emp where JOB like '%S';

16 --IN --varchar

17 select empno,ename,job from emp where job in('PRESIDENT','MANAGER','ANALYST');

18 --NOT IN

19 select empno,ename,job from emp where job not in('PRESIDENT','MANAGER','ANALYST') ;

oracle+有关emp表的练习题

oracle+有关emp表的练习题

oracle 有关emp表的练习题

使用scott/tiger用户下的emp表和dept表完成下列练习,表的结构说明如下

emp员工表(empno员工号/ename员工姓名/job工作/mgr上级编号/hiredate 受雇日期/sal薪金/comm佣金/deptno部门编号)

dept部门表(deptno部门编号/dname部门名称/loc地点)

工资=薪金+佣金

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

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

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

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

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

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

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

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

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

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

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

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

13.列出在每个部门工作的员工数量、平均工资和平均服务期限。

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

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

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

17.列出各个部门的MANAGER(经理)的最低薪金。

18.列出所有员工的年工资,按年薪从低到高排序。

19.列出经理人的名字.

20.不用组函数,求出薪水的最大值(此题猥琐)

上机实验11(单表查询)

上机实验11(单表查询)

上机实验11 单表查询

实验任务:

已知数据库shiyan11里有emp表,其字段及其类型,含义如下:

/*

Eno varchar(8) --员工编号,primary key

ename varchar(10) --姓名

deptno varchar(10) --部门号

job varchar(10) --工种

sal decimal(10,2) --工资

comm decimal(10,2) --佣金

hiredate datetime --雇佣日期

*/

--1、查询emp表中部门号为3的员工人数。

--2、查询emp表中部门号为3有佣金(佣金不为空)的员工人数。

--3、从emp表中查询佣金的平均值,不忽略没有佣金(佣金的值为空)的员工。--4、计算emp中工资sal的总和

--5、emp表根据部门号分组,查询各部门的平均工资。

--6、按部门号分组,查询每组的工资最大值大于2900的部门号,以及该部门的最高工资。

--7、按工种job列分组,查询每组工资和大于2200且不是以SALES开头的工种,及其每组的工资总和,工资总和的列名设为payroll。

--8、从emp表中查询雇佣日期为2005年4月18日的雇员的姓名、雇佣日期。

--9、查询雇员所在的部门号,雇员的姓名、雇员的工资,查询结果按部门号升序和工资降序排序。

--10、查询雇员的姓名,雇员的年薪与佣金之和(新列名为salary),查询结果按工资排序。--11、按工资降序输出员工姓名和工资

--12、查询没有佣金comm雇员的名称、工资和佣金

--13、查询有佣金comm雇员的名称、工资和佣金

数据库复习题及答案

数据库复习题及答案

1.保证数据库逻辑数据独立性的是()。

A.模式B.模式与内模式的映射 C.模式与外模式的映射D.内模式 2.设关系R和S各有100个元组,那么这两个关系的笛卡尔积运算结果的元组个数为()

A.100B.200C.10000D.不确定(与计算结果有关)

3.一般不适合创建索引的属性有()。

A.主键码和外键码。B.可以从索引直接得到查询结果的属性。C.对于范围查询中使用的属性。D.经常更新的属性。

4.为保护数据库中的信息,防止未经授权或非法的使用所造成的数据泄漏,更改或破坏,称为数据库的()。A.安全性B.完整性C.恢复D.并发控制5.有如下关系:教师(编号,姓名,性别,职称),将属性“性别”的取值范围定义为(男,女)符合()定义。

A.实体完整性B.参照完整性C.用户定义的完整性D.逻辑完整性6.如何构造出一个合适的数据逻辑结构是()主要解决的问题。

A.关系数据库优化B.数据字典 C.关系数据库规范化理论D.关系数据库查询

7.设计数据流程图(DFD)属于数据库设计的()阶段任务。

A.逻辑设计B.概念设计C.物理设计D.需求分析8.SQL和宿主语言的接口是()。

A.DBMS B.OS C.DML D.主变量9.关系代数表达式的优化策略中,首先要做的是()

A.对文件进行预处理B.尽早执行选择运算C.执行笛卡儿积运算D.投影运算

10.DBMS的并发控制子系统,保证了事务()的实现

A.原子性B.一致性C.隔离性D.持久性11.对数据库并发操作有可能带来的问题包括()

A.读出“脏数据”B.带来数据的冗余C.未被授权的用户非法存取数据D.破坏数据独立性

Oracle第二章习题及答案

Oracle第二章习题及答案

一、基于自己创建表的操作

1:创建一张学生表student,拥有stuid,stuname,sex,三个字段,其中stuid为主键。

create table student(

stuid int primary key,

stuname VARCHAR(20),

sex VARCHAR(20)

)

2:为该表增加一个新列score。

alter table student add(score varchar(10));

3:修改该表score列名为stuscore。

alter table student rename column score to stuscoree;

4:为student表插入5条记录。

insert into student values(1,'张三丰','男',80);

insert into student values(2,'阿悄','女',70);

insert into student values(3,'陈龙','男',90);

insert into student values(4,'章子怡','女',50);

insert into student values(5,'张卫健','男',60);

5:查询student表中的全部数据,其中列名为中文。

select STUID as 学号,STUNAME as 姓名,SEX as 性别,STUSCOREE as 分数from student;

6:查询学生姓名和分数,并是查询结果按照学生成绩降序排列。

select STUNAME,STUSCOREE from student order by STUSCOREE desc;

关系数据库操作语言SQL(四)_真题-无答案

关系数据库操作语言SQL(四)_真题-无答案

关系数据库操作语言SQL(四)

(总分100,考试时间90分钟)

设计题

在SQL Server 2000中,有教师表Teachers(TeacherID,Name, LeaderID),其中TeacherID是主码,类型是长度为4的普通编码定长字符串,且每位是0~9的数字字符;Name的类型是长度为10的普通编码可变长字符串;LeaderID是每个教师的领导的TeacherID。

1. 写出创建Teachers表的SQL语句,要求语句中包含所有的约束。

2. 现要查询TeacherID为“1234”的教师的领导的领导的TeacherID,请给出相应的SQL语句,要求只使用一条SQL语句实现,且此语句中不允许包含子查询。

3. 如下两个关系表:Emp(eid, ename, age, did, salary),其各列含义为:职工号,姓名,年龄,部门号,工资。Dept(did, dname, mgr_id),其各列含义为:部门号,部门名称,部门经理职工号。写出一条SQL语句,查询工资大于10000,且与其所在部门的经理年龄相同的职工姓名。

4. 写出创建下述关系表的SQL语句。Student表结构

列名含义数据类型约束

Sno 学号普通编码定长字符串,长度为7 主码

Sname 姓名普通编码定长字符串,长度为10 非空

Ssex 性别普通编码定长字符串,长度为2 取值范围为:{男,女}

Sage 年龄微整型大于等于14

Sdept 所在系普通编码不定长字符串,长度为20

Course表结构

列名含义数据类型约束

Cno 课程号普通编码定长字符串,长度为10 主码

oracle 有关emp表的简单查询练习题

oracle 有关emp表的简单查询练习题

SQL练习训练一

1、查询dept表的结构

在命令窗口输入:

desc dept;

2、检索dept表中的所有列信息

select * from dept

3、检索emp表中的员工姓名、月收入及部门编号

select ename "员工姓名",sal "月收入",empno "部门编号" from emp

注意查询字段用分号隔开。

4、检索emp表中员工姓名、及雇佣时间

日期数据的默认显示格式为“DD-MM-YY",如果希望使用其他显示格式(YYYY-MM-DD),那么必须使用TO_CHAR函数进行转换。

select ename "员工姓名", hiredate "雇用时间

1",to_char(hiredate,'YYYY-MM-DD') "雇用时间2" from emp

注意:第一个时间是日期类型的,在Oracle的查询界面它的旁边带有一个日历。

第二个时间是字符型的。

易错点:不要将YYYY-MM-DD使用双引号

5、使用distinct去掉重复行。

检索emp表中的部门编号及工种,并去掉重复行。

select distinct deptno "部门编号",job "工种" from emp order by deptno

注意distinct放的位置

为什么不放在from的前面?

翻译成汉语就明白了

应该是:选择不重复的部门编号和工种从emp表。而不是:选择部门编号和工种不重复地从emp表。这还是人话么O(∩_∩)O哈哈~

6、使用表达式来显示列

检索emp表中的员工姓名及全年的月收入

select ename "员工姓名", (sal+nvl(comm,0))*12 "全年收入" from emp 注意:防止提成comm为空的操作,使用nvl函数

8Oracleemp表案例

8Oracleemp表案例

8Oracleemp表案例

第一章

1.创建名字为hy_tablespace的表空间,默认大小为10M;

2.创建一个用户,用户名以自己名字命名,并指定命名空间为

hy_tablespace;

3.给用户授予connect和resource角色;

4.创建一张员工表(Emp),字段定义如下

empno NUMBER(4), 员工编号

ename VARCHAR2(10), 员工姓名

job VARCHAR2(9), 岗位

mgr NUMBER(4), 上级领导编号

hiredate DATE, 生日

sal NUMBER(7,2), 工资

comm NUMBER(7,2), 奖金

deptno NUMBER(2) 部门编号

5.将员工编号设置成主键;

6.创建一个部门表,字段如下

deptno NUMBER(2) , 部门编号

dname VARCHAR2(14), 部门名称

loc VARCHAR2(13) 部门位置

7.将部门编号设置为主键;

8.将Emp表中的ename设置为非空。

9.将dept表中的dname设置为非空。

10.将Emp表中的deptno字段设置默认值,默认值为10。

11.将Emp表中的deptno字段添加外键约束,关联到dept表中的

deptno字段。

12.创建一个序列,名为seq_hy,起始值为1,步长为1,没有最大值

限制。

13.怎样理解数据库和数据库实例的区别?

14.怎样理解权限和角色的区别?

15.char和varchar2数据类型有什么区别?

第二章

修改表结构

1.将Emp表中job字段长度改为15;

数据库试卷及 答案

数据库试卷及 答案

试题一

一、单项选择题

在每小题列出的四个备选项中只有一个是符合题目要

求的,请将其代码填写在题后的括号内。错选、多选

或未选均无分。

1. 数据库系统的核心是()

A.数据库B.数据库管理系统

C.数据模型D.软件工具

2.下列四项中,不属于数据库系统的特点的是()

A.数据结构化B.数据由DBMS统一管理和控制

C.数据冗余度大D.数据独立性高

3.概念模型是现实世界的第一层抽象,这一类模型中最著名的模型是()

A.层次模型B.关系模型

C.网状模型D.实体-联系模型

4.数据的物理独立性是指()

A.数据库与数据库管理系统相互独立

B.用户程序与数据库管理系统相互独立

C.用户的应用程序与存储在磁盘上数据库中的数据是相互独立的

D.应用程序与数据库中数据的逻辑结构是相互独立的

5.要保证数据库的逻辑数据独立性,需要修改的是()

A.模式与外模式之间的映象B.模式与内模式之间的映象

C.模式D.三级模式

6.关系数据模型的基本数据结构是( )

A.树B.图C.索引D.关系

7.有一名为“列车运营"实体,含有:车次、日期、实际发车时间、实际抵达时间、情况摘要等属性,该实体主码是()

A.车次B.日期

C.车次+日期D.车次+情况摘要

8。己知关系R和S,R∩S等价于()

A。(R—S)-S B。S-(S—R)

C.(S—R)-R

D.S—(R—S)

9.学校数据库中有学生和宿舍两个关系:

学生(学号,姓名)和宿舍(楼名,房间号,床位号,学号)

假设有的学生不住宿,床位也可能空闲。如果要列出所有学生住宿和宿舍分配

的情况,包括没有住宿的学生和空闲的床位,则应执行()

对scott中emp表进行各种操作

对scott中emp表进行各种操作

对scott中emp表进⾏各种操作

1,显⽰每个雇员的年⼯资

select sal*12 年⼯资 from emp;

2,显⽰每个雇员的年收⼊

select empno,ename,(sal+nvl(comm,0))*12 年收⼊ from emp;

3,显⽰⼯资⾼于3000的员⼯

select empno,ename,sal from emp where sal>3000;

4,如何查找1982.1.1后⼊职的员⼯

select empno,ename,sal,HIREDATE from emp where HIREDATE>'1-1⽉-1982';

5,如何显⽰⼯资在2000到2500的员⼯情况

select empno,ename,sal,HIREDATE from emp where sal between 2000 and 2500;

6,如何显⽰⾸字符为S的员⼯姓名和⼯资

select empno,ename,sal,HIREDATE from emp where ename like 'S%';

7,如何显⽰第三个字符为⼤写O的所有员⼯的姓名和⼯资

select empno,ename,sal,HIREDATE from emp where ename like '__O%';

8,如何显⽰empno为 123,345,800...的雇员情况

select empno,ename,job,sal from emp where empno in (7369,7499,7521);

9,如何显⽰没有上级的雇员的情况

sql联系

sql联系

1.设某工厂数据库中有两个基本表:

车间基本表:DEPT(DNO,DNAME,MGR__ENO),其属性分别表示车间编号、车间名和车间主任的职工号。

职工基本表:EMP(ENO,ENAME,AGE,SEX,SALARY,DNO),其属性分别表示职工号、姓名、年龄、性别、工资和所在车间的编号。

试用关系代数表达式写出下列查询:检索“金工车间”的男职工的职工号和姓名。

2.在第1题两个基本表的基础上,建立一个有关女车间主任的职工号和姓名的视图,其结

构如下:VIEW6(ENO,ENAME)。试写出创建视图VIEW6的SQL语句。

3.设教学数据库中有三个基本表:

S(SNO,SNAME,AGE,SEX),其属性分别表示学号、学生姓名、年龄、性别。

C(CNO,CNAME,TEACHER),其属性分别表示课程号、课程名、上课教师名。

SC(SNO,CNO,GRADE),其属性分别表示学号、课程号、成绩。

有如下SQL查询语句:

SELECT CNO

FROM C

WHERE CNO NOT IN

(SELECT CNO

FROM S,SC

WHERE S.SNO=SC.SNO

AND SNAME= `GU')

请完成下列问题:

(1)用汉语句子阐述上述SQL语句的查询结果。

(2)用等价的关系代数表达式表示上述SQL查询语句。

4..设有职工基本表:EMP(ENO,ENAME,AGE,SEX,SALARY),其属性分别表示

职工号、姓名、年龄、性别、工资。为每个工资低于1000元的女职工加薪200元,试写出这个操作的SQL语句。

5.设有职工基本表:EMP(ENO,ENAME,AGE,SEX,SALARY,DNO),其属性分别

slect语句查询

slect语句查询

orcal分部分练习查询语句

--第一部分:

--1、使用基本查询语句.

--(1)查询DEPT表显示所有部门名称.

selectdname from dept;

--(2)查询EMP表显示所有雇员名及其全年收入(月收入=工资+补助),处理NULL行,并指定列别名为"年收入"。(NVL(comm,0) comm取空值时用0替代)

select * from emp;

select e.ename,(e.sal+nvl(null,0))*12 年收入from emp e ;

--(3)查询显示不存在雇员的所有部门号。

selectd.deptno from empe,dept d where d.deptno=e.deptno(+) group by d.deptno having count(e.deptno)=0;

selectd.deptno from emp e right join dept d on d.deptno=e.deptno group by d.deptno having count(e.deptno)=0;

--2、限制查询数据

--(1)查询EMP表显示工资超过2850的雇员姓名和工资。

selecte.ename,e.sal from emp e where e.sal>2850 ;

--(2)查询EMP表显示工资不在1500~2850之间的所有雇员及工资。

select e.*,e.ename ,e.sal from emp e where e.sal<1500 or e.sal>2850;

ORACLE order by 用法

ORACLE order by 用法

ORACLE ORDER BY使用方法总结

ORACLE ORDER BY的常规用法如下:

SELECT <*,column [alias],...> FROM table [WHERE condition[s]] [ORDER BY] expr [ASC|DESC];

其中column 是列名,可以写*,也可以写具体的字段名,where条件可以省略,expr 是字段,也可以填1、2等,分别代表前面<*,column [alias],...>所填的第一列、第二列。

查询结果的排序

显示EMP表中不同的部门编号。

如果要在查询的同时排序显示结果,可以使用如下的语句:

Sql代码

1.SELECT字段列表FROM表名WHERE条件

2.ORDER BY字段名1 [ASC|DESC][,字段名2 [ASC|DESC]...];

[sql]view plain copy

1.SELECT字段列表FROM表名WHERE条件

2.ORDER BY字段名1 [ASC|DESC][,字段名2 [ASC|DESC]...];

ORDER BY从句后跟要排序的列。ORDER BY 从句出现在SELECT语句的最后。

排序有升序和降序之分,ASC表示升序排序,DESC表示降序排序。如果不指明排序顺序,默认的排序顺序为升序ASC。如果要降序,必须书写DESC关键字

1.升序排序

【训练1】查询雇员姓名和工资,并按工资从小到大排序。

输入并执行查询:

Sql代码

1.SELECT ename, sal FROM emp ORDER BY sal;

oracle面试测试题

oracle面试测试题

oracle面试测试题

典型oracle面试题

一:sql题

1、

假设学校环境如下:

一个系有若干个专业,每个专业一年只招一个班,每个班有若干个学生。现要建立关

于系、学生、班级的数据库,关系模式如下:

班级表class(班号classid,专业名subject,系名deptname,入学年份entertime,人数num)

学生表student(学号studentid,姓名name,年龄age,班号classid)系department(系号departmentid,系名deptname)要求用sql语句完成如下功能:

(1)建表,并实现如下要求 A:每个表根据实际定义好主外键关系 B:系表中编号字

段利用数据库自动化增长值实现 C:每个班级的人数不超过30人 D:学生年龄介于15

到30之间 E:学生姓名不能为空,系名不能重复(2)输入部分测试数据 department 表:

1 数学

2 计算机

3 化学

4 中文

5 经济学 class表:

101 软件计算机 1995 20 102 微电子计算机 1996 30 111 无机化学化

学 1995 29 112 高分子化学化学 1996 25 121 统计数学 1995 20 131 现

代语言中文 1996 20 141 国际贸易经济学 1997 30 142 国际金融经济学

1998 14 student表:

8101 张三 18 101 8102 钱四 16 121 8103 王玲 17 131 8104 李飞 19 102 8105 王五 20 141

(3)完成下列查询: A:列出所有人数大于等于28的系的编号和名称 B:列出所

查询emp表的所有记录

查询emp表的所有记录

查询emp表的所有记录。

Select * from emp

查询emp表,显示员工姓名和工资。

Select ename,sal from emp;

查找员工的姓名和薪水和奖金。

Select ename,sal,comm from emp

查询每个部门的平均工资,显示部门名称和平均工资。

删除emp表中员工编号为7782 的员工信息。

修改编号是7784的员工的工资和奖金,与员工编号是7600的工资和奖金一样。

查询每位员工的姓名和部门名称。

删除emp表中员工编号为7007 的员工信息。

修改编号是7784的员工的工资为5000。

查询员工表中的最高工资。

查询每个部门最低工资的员工信息。

写PL/SQL代码,接收一个雇员的编号,如果其工资>= 3000,则显示高工资,工资>= 2000,则显示中等工资,否则认为是低等工资。

编写一个存储过程,带有两个参数,要求,可以传入部门的编号,传出部门的平均工资操作。

1、关闭oracle数据库命令有:shutdown abort、shutdown transcational、()、()

2、想要使INSERT,DELETE和UPDATE语句导致的数据库变化,执行事务取消()命令。

3、使用游标和 loop 循环来显示所有部门的的地理位置(用%notfound 属性)。PL SQL语句为:(完成以下代码)

Declare

aloc dept.loc%rowtype;

cursor cur_dept is select loc from dept;

Begin

Open cur_dept;

关系代数例题讲解

关系代数例题讲解

2021/6/16
22
• (3)检索选修课程名为MATHS的学生学 号与姓名。
2021/6/16
23
• (3)检索选修课程名为MATHS的学生学 号与姓名。
• π SNO,SANME (σ CNAME='MATHS‘ (S SC C))
2021/6/16
24
• (4)检索选修课程号为C2或C4的学生学 号。
• 现检索仓库名称为“莘庄”的仓库里存储的 商品的编号和名称。试写出相应的关系代数 表达式
2021/6/16
14
• 设某商业集团为仓库存储商品设计了三个基 本表:
• 仓库: STORE(S#,SNAME,SADDR),其属 性是仓库编号、仓库名称和地址。
• 存储: SG(S#,G#,QUANTITY),其属性是 仓库编号、商品编号和数量。
• 这里(SC×SC)表示关系SC自身相乘 的乘积操作,其中数字1,2,4,5都为它 的结果关系中的属性序号。
• 比较这一题与上一题的差别。
2021/6/16
28
• (6) 检索不学C2课的学生姓名与年龄。
2021/6/16
29
• (6) 检索不学C2课的学生姓名与年龄。 •
π SNAME,AGE(S)-π SNAME,AGE (σ CNO='C2'(S SC))
3. 用关系代数表达式写出,查找“财务科”中
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

练习4.根据emp表写下列查询代码

1.选择部门30中的所有员工.

2.列出所有办事员(CLERK)的姓名,编号和部门编号.

3.找出奖金高于基本工资的员工.

4.找出奖金高于基本工资的60%的员工.

5.找出部门10中所有经理(MANAGER)和部门20中所有办事员(CLERK)的详细资料.

6.找出部门10中所有经理(MANAGER),部门20中所有办事员(CLERK),既不是经理又不是办事员但其基本工资大于或等于2000的所有员工的详细资料.

创建student表,插入数据,写出后面的查询代码

create table student(

sno char(5),

sname varchar(20),

sage number(3),

ssex char(2),

sdept char(2)

);

insert into student values('98001','钱横',18,'男','cs');

insert into student values('98002','王林',19,'女','cs');

insert into student values('98003','李明',20,'男','is');

insert into student values('98004','赵三',16,'女','ma');

1.查询性别为“男”的“cs”学院的学生的姓名、性别、院系

2.查询年龄大于18岁,并且不是“cs”学院与“ma”学院的学生的姓名和性别

3.查询姓“王”的学生的信息

排序练习

练习2.根据scott用户下的员工表和部门表完成下列题目

1.查询员工表显示员工名字、编号、工资,查询结果以名字为序升序排列

2.查询员工表显示员工名字、编号、工资,查询结果以工资升序排列,工资相同以名字升

序排列

3.查询员工表显示员工名字、编号、工资、部门编号,查询结果以部门编号排序,部门编

号相同的以员工名排序

4.根据员工表查询有几个部门编号,并以部门编号升序排列

练习3. 创建学生表STU2(sno,sname, final,usual),各字段分别是学号、姓名、期末成绩、平时

1.查询显示学生的学号、姓名、总成绩,总成绩=final*80%+usual*20%

2.查询显示学生的姓名、学号、平时成绩和期末成绩,并以期末成绩降序排列,如果期末

成绩相同的以平时成绩降序排列

3.查询显示学生的学号、姓名、总成绩,总成绩=final*80%+usual*20%,并以总成绩降序

排列,总成绩相同的以学号升序排列,显示时标题分别是学号、姓名、总成绩

select * from emp where deptno=30;

select ename,empno,deptno from emp where job='CLERK';

SELECT * from emp where comm>sal;

select * from emp where comm>sal*0.6;

select * from emp where deptno=10 and job='MANAGER' or DEPTNO=20 and job='CLERK';

/*select * from emp where deptno in(10,20) and job in('CLERK','MANAGER'); */

select * from emp where deptno=10 and job='MANAGER' or DEPTNO=20 and job='CLERK' or job not in('CLERK','MANAGER') and sal>=2000;

create table student(

sno char(5),

sname varchar(20),

sage number(3),

ssex char(2),

sdept char(2)

);

insert into student values('98001','钱横',18,'男','cs');

insert into student values('98002','王林',19,'女','cs');

insert into student values('98003','李明',20,'男','is');

insert into student values('98004','赵三',16,'女','ma');

select sname,ssex,sdept from student where ssex='男' and sdept='cs';

select sname,ssex from student where sage>18 and sdept not in('cs','ma');

select * from student where sname like '王%';

select ename,empno,sal from emp order by ename;

select ename,empno,sal from emp order by sal,ename;

select ename,empno,sal,deptno from emp order by deptno,ename;

select distinct deptno from emp order by deptno;

create table STU2(

Sno number,

Sname varchar(7),

final number,

ususal number);

insert into STU2 values (2010001,'王刚',89,75);

insert into STU2 values (2010002,'李强',75,75);

insert into STU2 values (2010003,'赵磊',95,85);

insert into STU2 values (2010004,'张明',75,65);

select Sno,Sname,final*0.8+ususal*0.2 from STU2;

select Sname,Sno,final,ususal from STU2 order by final desc,ususal desc;

select Sno 学号,Sname 姓名,final*0.8+ususal*0.2 总成绩from STU2 order by final*0.8+ususal*0.2 desc,Sno;

相关文档
最新文档