3.SQL语句之子查询和用户管理

1.子查询

使用时机:当查询条件不明确时,考虑使用子查询。这里的不明确是指没有具体的数值需要经过一次查询后才能获得的数值。

单行子查询

使用时机:筛选条件不明确需要执行一次查询,并且查询结果只有一个数据
注意:where子句中允许出现查询语句,该查询语句为子查询

--查询比clark工资高的员工信息
select * from emp where sal>(select sal from emp where ename='CLARK');
--查询工资高于平均工资的员工姓名和工资
select ename,sal from emp where sal>(select avg(sal) from emp);
--查询和scott属于同一部门且工资比他低的员工资料
select * from emp where deptno=(select deptno from emp where ename='SCOTT') and sal<(select sal from emp where ename='SCOTT');

多行子查询

使用时机:子查询的结果只有一个字段但是字段有n个值,考虑使用多行子查询,其实就是使用关键字。

关键字1: any 任意

select 内容 from 表名 where 字段名 比较运算符 any 子查询语句

--查询工资高于任意一个CLERK的所有员工信息
select * from emp where sal>any (select sal from emp where job='CLERK');

关键字2:all 所有

select 内容 from 表名 where 字段名 比较运算符 all 子查询语句.

--查询工资高于所有SALESMAN的员工信息
select * from emp where sal>all (select sal from emp where job='SALESMAN');
select * from emp where sal>(select max(sal) from emp where job='SALESMAN');

关键字3:in 表示任意存在  相当于=any

select 内容 from 表名 where 字段名 比较运算符 in 子查询语句

select 内容 from 表名 where 字段名 比较运算符not in 子查询语句

--查询部门20中与部门10中员工工作一样的员工信息
select * from emp where job in (select job from emp where deptno=10) and deptno=20;

2.用户管理

2.0 Oracle自带账户

sys  超级管理员账户
特点:具备system的所有权限,同时又具备其他权限
使用人:oracle工程师

system  管理账号
特点:具备大部分oracle的操作权限,主要用来管理普通账户及oracle的数据
使用人:oracle数据维护人员

普通账户

如果被system赋予权限,可以进行数据库的操作  (之前的学习一直是以普通账户身份登录的)

2.1 创建账户

首先需要使用system账户,并用dba身份,登录oracle管理系统

创建用户     create user 用户名 identified by 密码;

create user chen identified by 123;  --注意chen没有单引号''

2.2 维护账户

赋予权限   grant 权限或角色名 to 用户名;

grant connect to chen;  --赋予登录权限
grant resource to chen;  --赋予资源操作权限
grant dba to chen;  --赋予dba权限(使chen和sys权限相同)

删除权限    revoke 权限或角色名 from 用户名;

grant dba from chen;

2.3删除账户  

drop user 用户名

drop user chen;

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值