oracle笔记

发布 2021-05-11 22:31:28 阅读 1190

查看当前日期。

进行运算。取别名。

可加as也可不加as

字段连接用||

字符串连接。

任何数值和null进行运算后,都会得到null值。

查看当前日期。

设置日期显示格式(只能改当前会话)

对数据进行排序(默认为升序)

asc表示升序,desc表示降序。

对数据进行降序排序。

对数据进行排序(多字段)

deptno按升序,sal按降序对数据进行排序。

查询deptno为10的ename和deptno

查询sal在2000到4000之间的ename和sal

的用法。between … and … 的用法(包括前后2个)

in的用法和not in的用法。

账户锁定。用户解锁。

删除表中数据。

先保存。然后删除。

再回滚。distinct关键字可以消除重复行。

模糊查询::表示一个字符。

:表示零个或多个字符。

like后必须跟字符用单引号括起来’ ’

查询dname中以s开头s结尾的信息。

查询dname中第二个字符是e的信息。

查询dname中只要有s的信息。

中文也用一个下划线。

转义字符用法。

转义字符可以随便自定义但一般使用斜杠 \

在select语句后面加上escape关键字。

查询不带%的信息用 not like

运算符的优先级。

sp和th的用法。

nvl用法。

将comm中null的转换为45

nvl2用法nvl2(n,a,b)

将n中为null的变成b,不为null的变成a

nullif用法nullif(n,a)

将n中与a相等的变成null

将ename为smith的工资提升当job为clerk时乘以2

保存。运行保存的文件。

用@或者run

编辑edit

将查询到的信息存入文件中。

先打开spool

将select * from emp 查到的信息存入到d:/中。

然后关闭spool

最大,最小max( )min( )括号中可以是数值型也可以是字符型也可以是日期。

分组函数 **g/sum 只能用于num类型的数值。

count(字段)在记数时会将null忽略;

如果用count(*)的话可以正常记数,不忽略null行。

按deptno分组求出各部门的平均工资。

按工作职位job分组求出不同职位的平均工资。

按职位不同求出每个职位的最高工资。

计算出每个部门的人数。

求部门人数最多的部门人数。

求部门工资大于2000的人数最多的部门。

group by子句要写在where子句后面。

分组函数不能写在where子句后面,如果要对组函数进行判断,只能用h**ing子句。

h**ing子句,h**ing子句和group by 没有先后顺序。

对多个字段进行分组

表链接多表查询。

对表取别名不能用as 对字段取别名可以用as

外连接没有+号的那边全部显示。

自连接把一张表当成两张表。

99年后新连接自然连接(natural join):自动查询两表中相同字段并作等值连接。

相同字段的类型要相同,不然就会出错。

两个表中必须有相同字段名字和相同类型

两个表相连用join关键字。

右外连接连接右边的全部显示,左边显示符合条件的

联合查询 union

子查询子查询语句要写在括号里面。

子查询语句可以写在where子句后。

子查询也可以写在from后面(此时当成一个表)

子查询也可以写在h**ing子句后面。

使用子查询创建一个表,此时子查询可以不用写在括号中。

连表中数据都复制过来。

只创建一个和dept结构相同,不复制表中数据。

给class**添加字段。

修改表中name字段的长度。

使用rownum查询前10条纪录,rownum伪列只能从1开始。

查询8到14条纪录使用子查询。

99年后的新外连接右外连接显示出右边的所有信息。

向一个表中添加另一个表中的数据。

更新表中数据使用子查询。

设置只读事务。

字符函数。substr(char,m,n) char代表截取哪个字符串,m代表从第几个字符开始。

n代表截取几个字符;

替换将a替换成‘我是老鼠’

mod(m,n)m/n取余。

日期函数。add_months(sysdate,10) 在当前日期上加10个月。

last_day(sysdate)返回当前日期所在月份的最后一天。

取别名时可以用双引号,也可以不用双引号,但是在区分大小写和有空格的情况下必须使用双引号才行。

正确。错误示范:

1。 有空格。

2。区分大小写。

用现有的表填充已知表。

to_char

对表结构进行操作。

添加表字段。

删除表字段。

修改表字段(属性和长度)

字段长度变短时,不能小于字段中任意字符的长度。

修改表字段名。

删除表中数据。

不可回滚 truncate后不能跟where语句。

可回滚。对表重新命名。

创建表时可以给字段定义约束。

在定义字段时直接定义约束,叫列约束。

定义非空约束只能是列约束,不能进行表约束。

在定义字段后,再定义约束,并可以给约束取名字。

删除约束。查找表的约束。

外键约束 student表中的cid参照class表中的cid

删除**站中的垃圾。

添加约束。添加非空约束。

删除有参照的外键的主键,用cascade

让一个约束不可用、失效,并没有删除。

让约束生效。

创建一个索引。

一般在查询比较频繁的字段上添加索引。

创建一个视图。

可以给字段取别名。

with check option插入时检查是否符合条件。

with read only 只读不允许对其进行操作。

创建公共同义词

把查找sal的权限赋给public公共的,所有用户下都可以查找sal

plsql把输出开启。

if语句: if elsif else end if

异常处理。自定义异常。

循环语句。loop

if判断语句。

exit when判断语句。

while循环。

for循环。

逆转for 。reverse

游标:notfound属性。

给游标一个参数。

for循环会自动打开和关闭游标。

隐式游标。rowcount

修改。创建序列。

查找序列名称。

修改序列的增长量。

触发器。对表student进行插入操作时,触动触发器。

插入一条纪录时,实现触发器。

触发器实现即连删除,可删除参照的表中数据。

语句级触发器。

存储过程。函数。

oracle笔记

1 查看表的结构 desc tabledescription 2 set timing on 打开操作表的时间记录。3 消除重复行 distinct 4 大小写不区分的是列名,而不是里面的数据。1 可以对某一列直接进行加减乘除。两列相加。2 如果有一列为null,所得结果也为空。使用nvl函数处理n...

Oracle笔记

第1页1.oracle 的使用 1.1.sqlplus 的命令 初始化表的位置 set nls lang american 设置编码才可以使用下面脚本 cd oracle home rdbms cd demo 我们目前使用的是oralce 9i 9201 版本 select from v versi...

oracle笔记

clear 清屏。col title for a20 设置title的字符最多有20个。oracle介绍。rdbsrdb 基本的存储结构是,二维表。表头。行。列。字段。sql的分类 dsl 关键字 select dml 操作 insert delete update ddl 定义 create dr...