加入收藏 | 设为首页 | 会员中心 | 我要投稿 东莞站长网 (https://www.0769zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长百科 > 正文

Oracle-ocp-051

发布时间:2020-12-31 05:42:25 所属栏目:站长百科 来源:网络整理
导读:查看Oracle用户可以使用那些表数据字典表(管理用户所有表) desc user_tables;(查看可以操作的表)select tables_name from user_tables;(SCOTT用户可以使用四个表)字符类型都是左对齐,数字类型的都是右对齐空值是不可用的、未分配的、未知的或不使用的值空值
MONTHS_DETWEEN 两个日期之间的月数 ADD_MONTHS 将日历月添加到日期 NEXT_DAY 指定日期之后的下一个日期 LAST_DAY 当月最后一天 ROUND 舍入日期 TRUNC 截断日期 MONTHS_BETWEEN(‘01-sep-95‘,‘11-jan-94‘) 19.6774194 ADD_MONTHS(‘31-jan-96‘,1) 29-feb-96 NEXT_DAY(‘01-SEP-95‘,FRIDAY) 08-SEP-95 LAST_DAY(‘01-FEB-95‘) 28-FEB-95 ROUND(SYSDATE,‘MONTH‘)(month月)假设sysdate=‘25-jul-03‘ 01-AUG-03(大于等于15则月份进一) ROUND(SYSDATE,‘YEAR‘)(year年) 01-JAN-04(年份进行进一(月)大于等于6则年份进一月份大于等) TRUNC(SYSDATE,‘MONTH‘) 01-JUL-03 TRUNC(SYSDATE,‘YEAR‘) 01-JAN-03

转换函数和条件表达式

  • 隐式数据类型转换
  • 显示数据类型转换
  • 数字类型、字符类型、时间类型的转换
    使用TO_CHAR 函数处理日期
必须放在单引号内
区分大小写
可以包含任何有效的日期格式元素
具有一个fm元素、用于删除填充的空格或隐藏前导零
与日期值之间用逗号分隔
YYYY 用数字表示的完整年份 YEAR 用英文表示的年份 MM 月份的俩位数值 MONTH 月份的完整名称 MON 月份的三位字母缩写 DY 一周中某日的三个字母缩写 DAY 一周中某日的完整名称 DD 用数字表示的月份中某日 9 代表一个数字 0 强制显示0 $ 放置一个浮动的美元符号 L 使用浮动的本地货币符号 . 显示小数点 , 显示作为千位指示的逗号

嵌套函数

  • 单行函数可以嵌套到任意层
  • 嵌套函数的计算顺序是从最内层到最外层
  • 嵌套函数从内到外
常规函数、且合适使用空值的场合
将空值转换为实际值、可以使用的数据类型为日期、字符和数字、数据类型必须匹配:
NVL(expr1,exrp2)
NVL2(EXPR1,EXRP2,EXRP3)
NULLIF(expr1,expr2)

组函数报告聚集数据

count 一个字段有多少行 max 最大值 min 最小值 sum 一个字段的和 count 显示行数 distinct 去除重复行

创建数据组

group by 分组
select deptno,avg(sal) from emp group by deptno;
分组求平均数
  • 多列分组
    select deptno,avg(sal),job from emp group by deptno,job;
  • HAVING子句限定组结果
    select deptno,max(sal) from emp group by hacing max(sal)>=3000;
  • 使用联接显示多个表的数据
    使用outer 联接查询通常不满足联接条件的数据
    生成两个或多个表中所有行的笛卡尔积
  • 联接类型
    自然链接
    natural join 子句
    using 子句
    outer链接(外链接)
    left outer join 
    right outer join
    full outer join
    交叉链接
  • 创建自然链接
natural join 子句以两个表中具有相同名称的所有列为基础

它从两个表中选择在所有匹列中具有相同值得哪些行
如果名称相同的列具有不同的数据类型,则返回一个错误
  • select deptno from dept natural join emp
    两个查询内容一样则显示公有值
  • 使用using语句创建链接
    如果多个列具有相同的名称,但数据类型不匹配,请使用using子句指定等值联接的列
    当有多个列想匹配时,使用using 子句可仅与一列相匹配
    natural loin 和using 语句是互相排斥的。
  • select ename,deptno feom emp join dept using(deptno);
  • 在using子句中使用表别名
    不要对using 子句中使用的列加以限定
    如果在sql语句的另一个位置使用了同一列,则不要对其设置别名
  • 使用ON子句创建链接
    自然联接的基本联接条件是对具有相同名称的所有列进行等值链接
    使用ON子句可指定任意条件或指定要联接的列
    联动条件独立于其他搜索条件
    使用ON子句可以代码易于理解

    inner联接与outer联接

    在sql:1999中,如果两个表的联接只返回相匹配的行,则称联接inner
    两个表直接的联接不仅返回inner联接的结果,还返回左(或右)表中不匹配的行,则称为该联接为左(或右)outer链接
    两个表之间的联接不仅返回inner链接的结果,还返回左和右联接的结果,则称该链接为完全outer联接
  • 子查询
    先执行子查询(内部查询),再执行主查询(外部查询)主查询会使用子查询的结果
  • 当行子查询
    仅返回一行
= 等于 > 大于 >= 大于等于 < 小于 <= 小于等于 <> 不等于
  • 多行子查询
  • 集合操作符
    联合运算
    交集预算
    普及运算
    select 列表中的表达式在数量上必须匹配
    第二个查询中每一列的数据类型必须与第一个查询中列的数据类型相匹配
    可以使用括号更改执行顺序
    order dy 子句只能出现在语句的末尾
    Oracle server 和集合运算符
    除非使用union all 运算符、否则会自动删除重复行
    第一个查询汇总的列名将显示在结果中
    除非使用union all 运算符,否则默认情况下输出按照升序进行排序
  • union 运算符

    uninon 运算符从两个查询中分会不包括重复行的那些行

数据操纵语句

(编辑:东莞站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

日期处理函数

函数 结果
元素 结果
AVG 计算平均值
运算符 含义