oracle学习总结------ CRUD操作(create/retrleve/update/delete
来源:互联网 发布:域名排名 编辑:程序博客网 时间:2024/05/29 05:54
1、INSERT 语句
--- 语法:
INSERT INTO table_name(columnName1,columnName2,columnName3..) values (columnNameValue1,columnNameValue2,columnNameValue3..)
?注解:
|---插入数据的类型与字段的数据类型相同
|---数据的大小应在列的规定范围内
|---在values后加入的位置必须与列的排列位置一致
|---字符和日期类型应包含在单引号中。
|---插入空值,不指定域
|---如果给表的每一列添加值,可以不带列名。
2、UPDATE语句
---语法:
update table_name set column_name = exper [column_name = exper...]
where 条件
?注解:
|---SET字句指示哪些列值需要修改
3、DELETE语句
---语法
DELETE from table_nmae where 条件;
?注解:
|---如果不使用where字句,将删除表中所有数据
|---delete数据不能删除某列的值,如果将删除某列的值,则需要使用update语句。
|---delete语句仅是删除表的数据,但不删除表本身,drop语句删除表本身
|---truncate table table_name 删除表中的所有记录,但表结构还在。操作速度快,不可回滚。
4、SELECT语句
---语法:
SELECT [DISTINCT] *|{column1,column2,column3,....}
FROM table_name
?注解:
|---尽量返回较少的列,不要轻易使用*
|---nvl()函数用于处理null的问题,基本用法nvl(comm,o)
|---||在查询时,如果希望把多列拼接起来,作为一列返回
面试题:希望删除用户,同时保留该用户的数据对象
|-(1)锁定该用户
alter user scott account lock;
|-(2)这时该用户不能登陆数据库,但是system用户依然可以使用它的数据
对象
|-(3)解锁命令
alter user scott account unlock;
查找数据:
数据库的作用:存储数据,管理数据
表是粗存储数据的媒介
管理数据:insert uodate delete select(仅对视图和表有作用)
删除数据:delete drop truncate
delete:清楚数据
drop:三种的清除
truncate:清楚数据和空间
插入数据的语法:
insert into 表名(字段序列)values (字段序列的对应的值);
注:该字段必须包含非空字段
insert into 表名 values(所有字段)
更改数据的语法
uodate 表名 set 字段一= 字段值,字段二= 字段值,字段n= 字段值;
注意:不带where语句修改的是整张表。
查询语句的语法:
大小写区分问题:oracle引号里面大小写区分,引号外面大小写不区分。
原因:oracle引擎中,所有引号外面的都转换为大写在执行
注:oracle可以用双引号用来防止转译
单表查询:
where用于筛选
集合操作:
minus差集
例:(select * from emp where sal > 2000)
minus
(select * from emp where deptno = 20);
intersect交集
例:(select * from emp where sal > 2000)
intersect
(select * from emp where deptno = 20);
union(去重)/union all(不去重);
例:(select * from emp where sal > 2000)
union
(select * from emp where deptno = 20);
distinct去除重复
模糊查询:
like _代表单个字符
%代表任意个字符
例:
select * from emp where to_char(hiredate,'yyyy')like'%81';
不等于 != <>
例:
select * from emp where sal != 3000;
select * from emp where sal <> 3000;
between ..and..语句
select * from emp where sal between 1500 and 3000;
not between ...and ..语句
select * from emp where sal not between 1500 and 3000 or sal is null;
order by 语句
-- 默认为升序,降序 后面加desc
select * from emp order by sal;
gruop by 语句
select ename deptno avg(sal) from emp group by(ename,deptno);
!group by 后面根的字段必须包含所有的单值字段(不是集合函数列)
having字句:
select ename deptno avg(sal) from emp group by(ename,deptno) having avg(sal) > 1500;
?将空值转化为非空值:
nvl(参数一,参数二) 如果参数一为空返回参数二,如果为空则返回参数一
?为字段取别名
select emg as leader_emno from emp;
!一般情况下别名为单个字符
!不能为预定义字符
!查询关键字顺序:select * from * where * group by * having * order by *;
在Oracle中having子句必须有分组才能使用,
所以建议放在group by后面,order by前面。
虚拟列:表里不存在的列(该列通常为计算得出的或处理的列)
--- 语法:
INSERT INTO table_name(columnName1,columnName2,columnName3..) values (columnNameValue1,columnNameValue2,columnNameValue3..)
?注解:
|---插入数据的类型与字段的数据类型相同
|---数据的大小应在列的规定范围内
|---在values后加入的位置必须与列的排列位置一致
|---字符和日期类型应包含在单引号中。
|---插入空值,不指定域
|---如果给表的每一列添加值,可以不带列名。
2、UPDATE语句
---语法:
update table_name set column_name = exper [column_name = exper...]
where 条件
?注解:
|---SET字句指示哪些列值需要修改
3、DELETE语句
---语法
DELETE from table_nmae where 条件;
?注解:
|---如果不使用where字句,将删除表中所有数据
|---delete数据不能删除某列的值,如果将删除某列的值,则需要使用update语句。
|---delete语句仅是删除表的数据,但不删除表本身,drop语句删除表本身
|---truncate table table_name 删除表中的所有记录,但表结构还在。操作速度快,不可回滚。
4、SELECT语句
---语法:
SELECT [DISTINCT] *|{column1,column2,column3,....}
FROM table_name
?注解:
|---尽量返回较少的列,不要轻易使用*
|---nvl()函数用于处理null的问题,基本用法nvl(comm,o)
|---||在查询时,如果希望把多列拼接起来,作为一列返回
面试题:希望删除用户,同时保留该用户的数据对象
|-(1)锁定该用户
alter user scott account lock;
|-(2)这时该用户不能登陆数据库,但是system用户依然可以使用它的数据
对象
|-(3)解锁命令
alter user scott account unlock;
查找数据:
数据库的作用:存储数据,管理数据
表是粗存储数据的媒介
管理数据:insert uodate delete select(仅对视图和表有作用)
删除数据:delete drop truncate
delete:清楚数据
drop:三种的清除
truncate:清楚数据和空间
插入数据的语法:
insert into 表名(字段序列)values (字段序列的对应的值);
注:该字段必须包含非空字段
insert into 表名 values(所有字段)
更改数据的语法
uodate 表名 set 字段一= 字段值,字段二= 字段值,字段n= 字段值;
注意:不带where语句修改的是整张表。
查询语句的语法:
大小写区分问题:oracle引号里面大小写区分,引号外面大小写不区分。
原因:oracle引擎中,所有引号外面的都转换为大写在执行
注:oracle可以用双引号用来防止转译
单表查询:
where用于筛选
集合操作:
minus差集
例:(select * from emp where sal > 2000)
minus
(select * from emp where deptno = 20);
intersect交集
例:(select * from emp where sal > 2000)
intersect
(select * from emp where deptno = 20);
union(去重)/union all(不去重);
例:(select * from emp where sal > 2000)
union
(select * from emp where deptno = 20);
distinct去除重复
模糊查询:
like _代表单个字符
%代表任意个字符
例:
select * from emp where to_char(hiredate,'yyyy')like'%81';
不等于 != <>
例:
select * from emp where sal != 3000;
select * from emp where sal <> 3000;
between ..and..语句
select * from emp where sal between 1500 and 3000;
not between ...and ..语句
select * from emp where sal not between 1500 and 3000 or sal is null;
order by 语句
-- 默认为升序,降序 后面加desc
select * from emp order by sal;
gruop by 语句
select ename deptno avg(sal) from emp group by(ename,deptno);
!group by 后面根的字段必须包含所有的单值字段(不是集合函数列)
having字句:
select ename deptno avg(sal) from emp group by(ename,deptno) having avg(sal) > 1500;
?将空值转化为非空值:
nvl(参数一,参数二) 如果参数一为空返回参数二,如果为空则返回参数一
?为字段取别名
select emg as leader_emno from emp;
!一般情况下别名为单个字符
!不能为预定义字符
!查询关键字顺序:select * from * where * group by * having * order by *;
在Oracle中having子句必须有分组才能使用,
所以建议放在group by后面,order by前面。
虚拟列:表里不存在的列(该列通常为计算得出的或处理的列)
0 0
- oracle学习总结------ CRUD操作(create/retrleve/update/delete
- Oracle与jdbc增删改查CRUD(Create-Read-Update-Delete)
- MongoDB和Redis的CRUD (Create,Read,Update,Delete)
- 使用struts2框架来实现CRUD(create、read、update、delete)
- XML编程(CRUD)-create read update delete(DOM解析)
- CRUD:增加(Create)、读取查询(Retrieve)、更新(Update)和删除(Delete)
- Oracle 笔记一 select insert update delete transaction create alter
- Oracle 大规模 delete,update 操作 注意事项
- Oracle 大规模 delete,update 操作 注意事项
- Oracle 大规模 delete,update 操作 注意事项
- Oracle 大规模 delete,update 操作 注意事项
- 08-Oracle学习_DML-insert-update-delete
- oracle 学习笔记(九) update 和 delete
- mybatis学习总结二 crud操作
- Insert,Update,Delete操作
- 机器学习update操作总结
- 由于“Table(User)”没有主键,因此无法在其上执行 Create、Update 或 Delete 操作。
- 由于“Table(bt_Employee)”没有主键,因此无法在其上执行 Create、Update 或 Delete 操作。
- 51Nod - 1065 二分
- Ajax实例:实现查找员工和新建员工,利用XMLHttpRequest对象实现前后端交互
- sqlite3 的基本操作
- 2017.1.18【初中部 】普及组模拟赛C组 电梯里的爱情 题解
- android:clipToPadding的使用
- oracle学习总结------ CRUD操作(create/retrleve/update/delete
- oracle学习总结-----------多表查询
- 回顾<string.h>中API
- virtualbox磁盘文件格式转换
- oracle学习总结-----子查询
- 【PHP】PHP实现简单的setTimeOut来完成异步延时
- Myeclipse TODO的使用
- 寒假集训 day6
- 多元线性回归