设为首页 加入收藏

TOP

MS SQL基本语法及实例操作(二)
2014-11-23 23:37:05 来源: 作者: 【 】 浏览:7
Tags:SQL 基本 语法 实例 操作
ere hiredate>'1982-1-1'
9,如何显示工资在2000到2500之间的员工情况
select * from emp where sal between 1244 and 100244
select * from emp where sal>=2000 and sal<=250000
10,如何显示首字母为S的员工姓名和工资(模糊查询)
select ename ,sal from emp where ename like 's%'
11,如何显示第三个字母为‘O’的所有员工的姓名和工资(模糊查询)
select ename 姓名,sal as 月薪 from emp where ename like '__R%';
12,如何显示empno为123,345,800...的员工情况(在where条件中使用in)
select * from emp where empno in(123,345,800,1999,7400,7744);
13,如何显示没有上级的雇员的情况(使用is null 的操作符)
select * from emp where mgr is null;
14,查询工资高于1000或是岗位为manager的雇员,
同时还要满足他们的姓名首字母为j(使用逻辑操作符)
select * from emp where (sal>1000 or job='manager')
and ename like 'j%';
16,如何按工资的从低到高的顺序显示雇员的信息
(使用order by字句asc, desc)
select * from emp order by sal desc;
17,如何按入职的先后顺序显示雇员的信息(使用order by字句asc, desc)
select * from emp order by hiredate desc;
18,按部门号升序而雇员的工资降序排列显示雇员信息
(使用order by字句asc,desc)
select * from emp order by deptno asc,sal desc;
19,统计每个人的年薪,并按从低到高的顺序排序(使用列的别名排序)
select isnull(sal,0)*12+isnull(comm,0) 年薪 from emp order by 年薪;
20,如何显示员工中最高工资和最低工资
select max(sal) as "max(sal)",min(sal) from emp;
21,如何显示最低工资的员工信息
select * from emp where sal = (select min(sal) from emp);
www.2cto.com
22,显示所有员工的平均工资和工资总和
select avg(sal) as "avg(sal)" , sum(sal) as "sum(sal)" from emp;
23,把高于平均工资的雇员的名字和他的工资显示出来
select ename,sal from emp where sal>(select avg(sal) from emp);
24,计算共有多少名员工
select count(ename) from emp;
25,如何显示每个部门的平均工资和最高工资
select avg(sal) as "avg",max(sal) as "max",deptno
from emp group by deptno
26,如何显示每个部门的高于总平均工资的平均工资和最高工资
select avg(sal) as "avg",max(sal) as "max",deptno
from emp where sal>(select avg(sal) from emp) group by deptno
27显示每个部门的每种岗位的平均工资和最低工资
select avg(sal),min(sal),deptno,job from emp group by deptno,job
order by deptno
28,显示平均工资低于2000的部门号和它的平均工资
(having往往和group by结合使用,可以对分组查询结果进行筛选)
select avg(sal),deptno from emp group by deptno having avg(sal)<2000
29,使用企业管理器来操作数据库的分离与附加
见操作步骤
30,使用企业管理器来操作数据库的备份与恢复操作
见操作步骤
31,使用查询分析器器来操作数据库的备份与恢复操作
(1)备份数据库
backup database mf2011 to disk='f:/lxliog.bak';
(2)删除数据库
drop database mf2011;
(3)恢复数据库
restore database mf2011 from disk='f:/lxliog.bak';
复杂查询(多表查询)
32,显示sales部门的位置和其员工的姓名
select d.loc,e.ename from emp e,dept d where d.dname='sales' and d.deptno=e.deptno
33,显示雇员名字,雇员工资及所在部门的名字(当字段有歧义的时候要用别名)
select e.ename,e.sal,d.dname from emp e,dept d where e.deptno=d.deptno
www.2cto.com
34,显示部门号为10的部门名称,及该部门的员工名字和工资
select d.dname, e.ename, e.sal from emp e,dept d where d.deptno=10 and d.deptno=e.deptno
35,显示雇员名字,雇员工资及所在部门的名字,并按部门名称排序
select e.ename, e.sal, d.dname from emp e,dept d where e.deptno=d.deptno order by d.dname
自连接:在同一张表的连接查询
36,显示某个员工的上级领导的姓名(比如:smith)
(1)select mgr from emp where ename='adamc'
(2)select ename from emp where empno=(select mgr from emp where ename='adamc')
37,显示公司每个员工和他上级的名字
select worker.ename, boss.ename from emp worker, emp boss where worker.mgr=boss.empno
子查询:嵌入在其它sql语句中的select语句,也叫嵌套查询。
单行子查询:只返回一行数据的子查询语句。
38,显示与jones同一部门的所有员工
(1)select deptno from emp where ename='jones'
(2)select *
首页 上一页 1 2 3 4 下一页 尾页 2/4/4
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇在SQLServer2012中实现CDCforOrac.. 下一篇SQLServer2005数据导入到Mysql详..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: