oracle 学习笔记(第一天 下午)

1.sql 支持以下类别的命令
 数据库定义语言(DDL)(create,alter,truncate,drop)
 数据库操作语言(DML)(insert,select,delete,update)
 事务控制语言  (TCL)(commit,savepoint,rollback)
  事务是最小的工作单元,做为一个整体进行工作
  保证事务的整体成功或失败,称为事务控制
  用于事务控制的语句有(commit,rollback,savepoint)
 数据控制语言  (DCL)(grant,revoke)
 

 

2.数据类型
 字符
 数值
 日期时间
 RAW/LONG RAW
 LOB
 
 
3.字符数据类型包括(char,varchar2,long)
 当需要固定长度的字符串是,使用char,char可以存储字母数字值,char数据类型的列长度是1到2000个字节
 varchar2支持可变长的字符串,可以存储字母数字值,大小在1到4000个字节范围内
 long数据类型存储可变长度字符数据最多能存储 2GB
 
 
4.数值数据类型
 可以存储整数,浮点数和实数
 最高精度为38
 申明语法为number[(p[,s])],p表示精度,上表示小数点的位数
 

 

5.日期时间数据类型包括年、月、日、小时、分钟、秒
 date-存储日期和时间部分,精确到整个的秒
 timestamp 存储日期、时间和时区信息,秒值精确到小数点后6位
 

 

6.RAW 和 LONG RAW
 RAW数据类型用于存储二进制数据,最多能存储2000字节
 LONG RAW 用于存储可变长的二进制数据,最多能存储2GB
 

 

7.lob称为大对象数据类型,可以存储多达4gb的非结构化信息,它允许对数据进行高效、随即、分段的访问,他包括(clob,blob,bfile)
 clob即character lob,能够存储大量字符数据
 blob即binary lob,可以存储较大的二进制对象,如图形,视频
 bfile即binary file,它用于将二进制数据存储在数据库外部的操作系统文件中
 
 
8.oracle中的伪列就像一个表列,但是他并没有存储在表中,伪列可以从表中查询,但不能插入,更新和删除它们的值
 常用的伪列有 rowid和rownum
 rowid是表中行的存储地址,该地址可以唯一的标示数据库中的一行,可以使用rowid伪列快速的定位表中的一行
 rownum 是查询返回的结果集中行的序号,可以使用它来限制查询返回的行数
 
  
9.sql操作符包括(算术操作符,比较操作符,逻辑操作符,集合操作符,连接操作符)
 算术操作符(+、-、*、/)
 比较操作符(=、!=、<、>、<=、>=、between…and、in、like、is null等)
 逻辑操作符(and、or、not)
 集合操作符(union、union all、intersect、minus)
  集合操作符将两个查询结果组合成一个结果
  intersect操作符返回两个查询的公共行即交集
   select orderno from order_master
   intersect
   elect orderno from order_detail
  minus操作符返回葱第一个查询中排除第二个查询中出现的行
   select orderno from order_master
   minus
   elect orderno from order_detail
 连接操作符(||)
 sql操作符的优先级是(算术操作符>连接操作符>比较操作符>not 逻辑操作符>and 逻辑操作符>or 逻辑操作符)
 
 
10.sql函数 (单行函数,分组函数,分析函数)
 单行函数对于从表中查询的每一行值返回一个值
 可是使用在select和where子句中
 单行函数大致分为(日期函数,数字函数,字符函数,转换函数,其他函数)
 日期函数对日期值进行运算,并生成日期数据类型或数值类型的结果
 日期函数包括(add_months,months_between,last_day,round,next_day,trunc,extract)
 字符函数接受字符输入并返回字符或数值

   函数
   输入
  输出
Initcap(char)
Select initcap(‘hello’) from dual;
Hello
Lower(char)
Select lower(‘FUN’) from dual;
fun
Upper(char)
Select upper(‘sun’) from dual;
SUN
Ltrim(char,set)
Select ltrim( ‘xyzadams’,’xyz’) from dual;
adams
Rtrim(char,set)
Select rtrim(‘xyzadams’,’ams’) from dual;
xyzad
Translate(char, from, to)
Select translate(‘jack’,’j’ ,’b’) from dual;
back
Replace(char, searchstring,[rep string])
Select replace(‘jack and jue’ ,’j’,’bl’) from dual;
black and blue
Instr (char, m, n)
Select instr (‘worldwide’,’d’) from dual;
5
Substr (char, m, n)
Select substr(‘abcdefg’,3,2) from dual;
cd
Concat (expr1, expr2)
Select concat (‘Hello’,’ world’) from dual;
Hello world

 数字函数接受数字输入并返回数值结果

   函数
   输入
  输出
Abs (n)
Select abs(-15) from dual;
15
Ceil(n)
Select ceil(44.778) from dual;
45
Cos(n)
Select cos(180) from dual;
-.5984601
Cosh(n)
Select cosh(0) from dual;
1
Floor(n)
Select floor(100.2) from dual;
100
Power(m,n)
Select power(4,2) from dual;
16
Mod(m,n)
Select mod(10,3) from dual;
1
Round(m,n)
Select round(100.256,2) from dual;
100.26
Trunc(m,n)
Select trunc(100.256,2) from dual;
100.25
Sqrt(n)
Select sqrt(4) from dual;
2
Sign(n)
Select sign(-30) from dual;
-1

 转化函数(to_char,to_date,to_number)
 其他函数(nvl,nvl2,nullif 转化控制的函数)
 分组函数(avg,min,max,sum,count)
 分析函数(row_number,rank,dense_rank),根据一组行来计算聚合值,用于计算完成聚集的累积排名,移动平均数等,为每组记录返回多个行
  row_number 返回连续的排位,不论值是否相等
  rank 具有相等值的行排位相同,序数随后跳跃
  dense_rank 具有相等值的行排位相同,序号是连续的
 


11.group by 和having 子句
 group by 子句用于将信息划分为更小的一组,每一行返回针对该组的当个结果
 having子句 用于指定group by子句检索行的条件

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值