软件世界网 购物 网址 三丰软件 | 小说 美女秀 图库大全 游戏 笑话 | 下载 开发知识库 新闻 开发 图片素材
多播视频美女直播
↓电视,电影,美女直播,迅雷资源↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
移动开发 架构设计 编程语言 Web前端 互联网
开发杂谈 系统运维 研发管理 数据库 云计算 Android开发资料
  软件世界网 -> 数据库 -> OracleSQL经典查询练手第二篇 -> 正文阅读

[数据库]OracleSQL经典查询练手第二篇


Oracle SQL经典查询练手第二篇
本文分享的是Oracle SQL的经典查询第二篇,仅仅是作者自己的见解,如有问题,希望您给出建议或者方法。同时,欢迎广大读者们补充,如果您有经典的查询方式也可以拿出来我们共同分享,共同成长,共同进步。

本计算机上使用的是Oracle 11.2.0版本,使用scott用户登陆。使用的是系统自带的表。
表结构:
describe emp;
[img]http://img.blog.csdn.net/20160329231016897?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center
describe dept;
[img]http://img.blog.csdn.net/20160329231021429?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center
select*from emp;
[img]http://img.blog.csdn.net/20160329231026131?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center

select*from dept;
[img]http://img.blog.csdn.net/20160329231035710?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center

----scott用户----
1. 找出EMP表中的姓名(ENAME)第三个字母是A 的员工姓名。
2. 找出EMP表员工名字中含有A 和N的员工姓名。
3. 找出所有有佣金的员工,列出姓名、工资、佣金,显示结果按工资从小到大。
4.列出部门编号为20的所有职位。
5.列出不属于SALES 的部门。
6.显示工资不在1000 到1500 之间的员工信息:名字、工资,按工资从大到小排序。
7.显示职位为MANAGER 和SALESMAN,年薪在15000 和20000之间的员工的信息:名字、职位、年薪。
8.说明以下两条SQL语句的输出结果: 
SELECT EMPNO,COMM FROM EMP WHERE COMM ISNULL; 
SELECT EMPNO,COMM FROM EMP WHERE COMM =NULL;  。
9.语句SELECTENAME,SAL FROM EMP WHERE SAL > '1500'是否报错?
10.找出每个部门里薪资最低的员工


--1. 找出EMP表中的姓名(ENAME)第三个字母是A 的员工姓名。
select enamefrom empwhere enamelike'__A%';
[img]http://img.blog.csdn.net/20160329231040101?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center

--2. 找出EMP表员工名字中含有A 和N的员工姓名。
select enamefrom empwhere enamelike'%A%'and ename like'%N%';
[img]http://img.blog.csdn.net/20160329231045273?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center

--3. 找出所有有佣金的员工,列出姓名、工资、佣金,显示结果按工资从小到大。
select ename,sal+nvl(comm,0) salary,comm from emporderby salarydesc;
[img]http://img.blog.csdn.net/20160329231102147?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center

--4.列出部门编号为20的所有职位。
select jobfrom empwhere deptno=20;
[img]http://img.blog.csdn.net/20160329231109336?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center

--5.列出不属于SALES 的部门。
selectdistinct*from deptwhere dept.dname<>'SALES';
[img]http://img.blog.csdn.net/20160329231117554?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center

--6.显示工资不在1000 到1500 之间的员工信息:名字、工资,按工资从大到小排序。
select ename,salfrom empwhere salnotbetween1000 and1500orderby saldesc;
[img]http://img.blog.csdn.net/20160329231124024?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center

--7.显示职位为MANAGER 和SALESMAN,年薪在15000 和20000之间的员工的信息:名字、职位、年薪。
select ename,job,(sal+nvl(comm,0))*12 salaryfrom emp where (sal+nvl(comm,0))*12 between15000and20000  and jobin('MANAGER','SALESMAN');
[img]http://img.blog.csdn.net/20160329231142853?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center

--8.说明以下两条SQL语句的输出结果: 
-- SELECT EMPNO,COMM FROM EMP WHERE COMM ISNULL; 
-- SELECT EMPNO,COMM FROM EMP WHERE COMM = NULL;  。


--解:第一句可以输出comm为空的记录,但是第二句不可以。
--说明:IS NULL是判断某个字段是否为空,为空并不等价于为空字符串或为数字0; 
--而 =NULL 是判断某个值是否等于 NULL,NULL = NULL和NULL <> NULL都为 FALSE。
 
--9.语句SELECTENAME,SAL FROM EMP WHERE SAL > '1500'是否报错?
--不会
select ename,salfrom empwhere sal>'1500';
[img]http://img.blog.csdn.net/20160329231147491?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center

--10.找出每个部门里薪资最低的员工
select deptno,min((sal+nvl(comm,0))) minsal from emp groupby deptno;
[img]http://img.blog.csdn.net/20160329231151634?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center



作者水平有限,难免有错误之处,殷切希望广大读者批评指正。

转载请注明出处:http://blog.csdn.net/gcw1024

......显示全文...
    点击查看全文


上一篇文章      下一篇文章      查看所有文章
2016-04-01 16:56:17  
数据库 最新文章
Python&MySQL&PyQt
最新用python来操作mysql完全解析
mongodb的安装详解
1.PDO简介
《MySQL必知必会学习笔记》:高级联结
【翻译自mos文章】怎么对Microsoft(Office)
MyCAT全局表描述及示例
ocp
关于SQL数据表存储过程表名前缀换成dbo代码
数据库调优教程(二)慢查询数据准备
360图书馆 软件开发资料 文字转语音 购物精选 软件下载 美食菜谱 新闻资讯 电影视频 小游戏 Chinese Culture
生肖星座 三丰软件 视频 开发 Android开发 站长 古典小说 网文精选 搜图网 美图 中国文化英文版 多播 租车 短信
2017-7-25 20:35:25
多播视频美女直播
↓电视,电影,美女直播,迅雷资源↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  软件世界网 --