- 1、本文档共13页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
习题1
请根据给出的数据库表结构来回答相应问题:
DEPT (DEPTNO INT, DNAME VARCHAR(14),LOC VARCHAR(13));
EMP (EMPNO INT,ENAME VARCHAR(10), JOB VARCHAR(9), MGR INT, HIREDATE DATE,
SAL FLOAT, COMM FLOAT, DEPTNO INT);
BONUS (ENAME VARCHAR(10), JOB VARCHAR(9), SAL INT, COMM INT);
SALGRADE ( GRADE INT, LOSAL INT, HISAL INT);
其中表中包含如下数据:
DEPT表:
EMP表:
SALGRADE表:
BONUS表: 无数据
根据上面描述完成下面问题:
(注意:注意保存脚本,尤其是DDL和DML,以便进行数据还原)
DDL
写出上述表的建表语句。此外,在DEPT上创建名为”PK_DEPT”的主键约束,在EMP表上创建名为” PK_EMP”的主键约束以及指向表DEPT的外键约束” FK_DEPTNO”。
命令:create table DEPT(DEPTNO int ,DNAME nvarchar,LOC nvarchar,primary key(pk_dept));
Create table EMP(EMPNO int ,ENAME nvarchar, JOB nvarchar, MGR int,HIREDATE datetime,SAL int ,COMM float, DEPTNO int,primary key (pk_emp),foregin key(fk_deptno)references dept);
DML
给出相应的INSERT语句来完成题中给出数据的插入。
命令:insert(“1”,”accounting”,”null”)
将所有员工的工资上浮10%.然后查询员工姓名、薪水、补助。(emp.sal为工资,m为补助)
命令:select ename,sal*1.1,comm
From emp
结果:
单表查询
查看EMP表中部门号为10的员工的姓名,职位,参加工作时间,工资。
命令:select ename,job,hiredate,sal
From emp
Where emp.depyno=10
结果:
查所有已有的职位,要求去除重复项。
命令: select distinct job
From emp
结果:
计算每个员工的年薪,并取列名为Salary of Year(emp.sal为员工的月薪),要求输出员工姓名,年薪。
命令:select ename, sal*12 as salary of year
From emp
结果:
查询每个员工每个月拿到的总金额(emp.sal为工资,m为补助)。(提示:isnull(ex1,ex2)表示如果ex1为空则返回ex2 ename, isnull(sal+comm,sal) as total
From emp
结果:
显示职位是主管(manager)的员工的姓名,工资。
命令:select ename,sal
From emp
Where emp.job=’manager’
结果:
显示第3个字符为大写O的所有员工的姓名及工资。
命令:select enmae ,sal
From emp
Where emp.ename like ’__O%’
结果:
显示职位为销售员(SALESMAN)或主管(MANAGER)的员工的姓名,工资,职位。
命令:selecte ename,sal,job
From emp
Where emp.job=’salesman’ or ‘manager’
结果:
显示所有没有补助的员工的姓名。
命令:select ename
From emp
Where m is null
结果:
显示有补助的员工的姓名,工资,补助。
命令:select ename,sal,comm
From emp
Where m is not null
结果:
排序显示所有员工的姓名,工资(按工资降序方式)。
命令:select ename,sal
From emp
Order by emp.sal desc
结果:
显示员工的最高工资和最低工资。
命令:select max(sal) as 最高工资,min(sal) as 最低工资
F
文档评论(0)