oracle

select*from emp where sal>2000;   查询出薪资大于2000的员工的所有信息
select*from emp where sal<=1600;  查询出基本工资小于等于1600的全部雇员的信息
查询出姓名为Smith的所有信息
select*from emp where ename='smith';// 查询不出来任何结果,oracle数据库严格区分大小写
SELECT*FROM emp WHERE ename='SMITH';//显示姓名为Smith的雇员的所有信息


select*from emp where job!='CLERK';  //查询出职位不是CLERK的所有员工信息
select*from emp where job<>'CLERK';  <>表示不等于,不是
逻辑运算符:
AND:条件AND条件AND条件;  所有条件都必须要同时满足。
OR:条件OR条件OR条件OR;   所有条件只要有一个满足就行了


问题一:查询出销售人员中工资高于1200的所有员工
select*from emp where job='SALESMAN' AND sal>1200;
问题二:查询出薪资范围在1200到3000之间的所有雇员信息
select*from emp where sal<=3000 AND sal>=1200;
问题三:查询出10部门的所有经理的所有信息
            条件一:先查出10部门的数据
            条件二:职位必须是经理
select*from emp where deptno=10 and job='MANAGER';
OR连接操作
问题:查出薪资高于3000或者,职位是办事员的所有人员的信息
select*from emp where sal>3000 or job='CLERK';
NOT取反操作
问题:查询出职位不是办事员的信息
select*from emp where not job='CLERK';



1:取值范围:between....and    字段between最小值and最大值

范例:查询出工资在12003000之间的雇员信息,并按照工资从大到小排序。

SELECT*FROM emp

WHERE sal BETWEEN 1200 AND  3000  ORDER  BY  sal  DESC;

 

 

 

3、所有员工名字前面加上dear。并且名字首字母大写

SELECT 'dear' || INITCAP (ename) FROM emp;

4、找出姓名为5个字段的员工

SELECT*FROM emp WHERE LENGTH(ename)=5;

5、找出姓名中不带R这个字母的员工

SELECT*FROM emp WHERE ename  NOT LIKE '%R%';

6、显示所有员工的姓名的第一个字

SELECT  ename,SUBSTR(ename,1,1) FROM emp;

7、显示所有员工,按名字降序排序,若相同,则按工资升序排序。

SELECT*FROM emp ORDER BY ename DESC,sal ASC;

8、列出员工加入公司的天数(四舍五入)

SELECT*FROM emp  ORDER BY sal  DESC;


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值