Oracle数据库特殊查询技术

附加实验 oracle高级数据查询技术

实验目的:

一、掌握日期型数据的操作技术
二、掌握层次查询技术
三、理解情景查询与翻译查询技术
四、了解统计查询技术

实验内容:

一、日期型数据的操作

日期型数据的查询显示

在这里插入图片描述

不同语言环境下日期型数据查询结果的差异
SESSION 每建立一个连接connection会创建一个session会话

      SELECT * FROM  v$session;

自由控制日期型数据的显示格式的方法
日期型数据的使用方法

SELECT to_char(sysdate,’yyyy-mm-dd hh:mi:ss’) as systime 
FROM dual;

不同语言环境下添加记录时日期型数据的使用方法

与当前的语言环境一致的格式

 SELECT to_char(hiredate,’yyyy-mm-dd hh-mi-ss’) 
 FROM emp;

自由控制不同形式的日期型数据在数据添加与修改中的应用

 ALTER session set nls_date_format=’yyyy-mm-dd hh24:mi:ss’; 
 SLECT sysdate
 FROM dual;

避免使用2位年份,先用其他方式处理使之成为4位

避免使用文字化的月份

注意事项:

            2位数的年份会导致意外情况
            当前世纪前半叶后半叶的区别

二、层次查询技术

深度遍历的层次查询

SELECT fieldName
FROM tableName
start with rootCondition
connect by prior fieldname  =  fieldName

在这里插入图片描述
上级节点的字段 当前节点的字段
广度遍历的层次查询
形成环路的层次查询
不再成为一棵树或森林了trees 图 graph net

三、情景查询与翻译查询技术

情景查询

decode(fieldName,orgValue,newValue)

翻译查询

translate(fieldName,beforeValue,afterValue)

     SELECT empno,ename,decode(deptno,null,'未知')
     FROM EMP     

在这里插入图片描述

      SELECT translate(123.69,12345678,6901482735) transNum
      FROM dual

在这里插入图片描述

     UPDATE emp set sal=translate(1500.9,1234567890,6912035487) 
     WHERE empno=7;

在这里插入图片描述

存储的数据类型

 数值型     int    float   number(6,2)

 字符型	 char    varchar   nchar  nvarchar   (varchar2)

 日期型     datetime  date  timestamp     

展示的数据类型(查询结果的内容)

字符型

to_char(value,formatString)  将数值转换成指定格式的字符串   0 9 , .   
 
to_date(string,formatStirng  将字符串按指定格式转换成日期型数据 

NLS native language system

ALTER session set nls_language='%s' AMERICAN/SIMPLIFIED        
CHINESE
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值