8.11Oracle 数据查询

重点

  1. 单张表的CURD
  2. 多张表的CURD

1 SQL
SQL Structed Query Language 结构化查询语言

授权:scott把查询emp的权限给tom
grant select on emp to tom
语句要传输到oracle服务器,被执行

2 查询

select 字段 from 表

查询一个字段
select ename from scott.emp

查询多个字段
select eno,ename from scott.emp

查询所有
select * from 表

3 按条件查询

select 字段 from 表 where 条件

例如 查询工资大于2000的员工信息
select * from emp where sal>2000

查询scott的员工信息
select * from emp where ename=‘scott’

查询除了scott的员工信息
select * from emp where ename <> ‘scott’

4 插入数据
向S表中添加一条记录
insert into s(sno,sname,city) values(‘s1’,‘海南公司’,‘海口’);
如果向表种插入所有字段都插入记录,则字段可以省略
insert into s values(‘s1’,‘海南公司’,‘海口’);

向某些列插入数据
insert into s(sno,sname) values(‘s1’,‘海南公司’);

现在有一个stuinfo表,要做一张备份表。备份表结构要跟stuinfo一样。
问:怎么创建一个备份表?

复制一张表,包括数据
create table stuinfobak as select * from stuinfo;

如果只想要表结构,不想要数据
create table stuinfobak as select * from stuinfo where 4=3;

向sruinfobak中插入stuinfo的数据
insert into stuinfobak select * from stuinfo。

5 更新
update 表名 set 字段=值 where 条件

如果不加条件会修改所有的记录
update stuinfo set stuage = 26;

修改的条件,条件一般是主键等于xxx

– to-date('2019/1/1,‘yyyy-mm-dd’)把字符串按格式转换成日期类型
update stuinfo set stuage =27,stuname=‘sadsa’,
behin_date=to-date('2019/1/1,‘yyyy-mm-dd’) where stuno=‘101010’;

6 删除

delete from 表 where 条件

删除 学号是101012的记录
delete from stuinfo where stuno=‘101012’;

清空表(事物)
truncate table stuinfo;

如果没有添加主键,插入的数据重复了
查询不重复的数据
select distinct * from stuinfo;

移除掉重复的数据
select

dba database administrator

不要弄联合主键 维护效率低 要搞主键可以设置一个 scno当主键

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值