ORACLE函数介绍第八篇 综述

原创 2007年09月19日 17:48:00

  通过前面章节的练习我们可以对三类函数特征做些描述。

单值函数多数处理单个或多个值但只返回单个值(SYS_CONNECT_BY_PATH除外)

聚合函数多数处理多行并且各分组序列分别返回成一行。

分析函数多数处理多行并且每条记录均会有返回。

  需要注意不同类型函数可被应用的范围。

单值函数可应用范围最为广泛,select语句中的每一处都可被嵌入。

聚合函数通常会配合group by被应用于select或having子句,

分析函数只能应用于select或order by子句。

  虽然我们前面介绍了百十多个函数,可是仍然并非全部,并且即使是我们介绍到的,也不能说所有函数都已经介绍了其全部的特色,比如:对于substr,length,instr(like)等均有扩展形式。比如

substr:以字符为单位

substrb:以字节为单位

substrc:以unicode完全字符为单位

substr2:以UCS2代码点为单位

substr4:以UCS4代码点为单位

  它们对于字符的处理方式都是一致的,只不过在我们看来相同的字符在它们看来可能就不同,这就是不同编码的原因。关于unicode,ucs代码概念介绍可以看看这里:http://www.vscodes.com/article/5/104/2227.html

  Oracle中函数功能强大,分类细致,某些地方构思异常巧妙。

一、参数中的小数点

我们以CEIL为例

SELECT CEIL(12.8FROM DUAL;

值是什么?

二、负数也有学问

我们先以LPAD函数为例。一个非常简单的补值单值函数。

SELECT LPAD('Let us go!',5,'-'FROM DUAL;

猜猜这个会返回什么值呢?

SELECT LPAD('Let us go!',20,'-'FROM DUAL;

猜猜这个又会返回什么值呢?

SELECT LPAD('Let us go!',-5,'-'FROM DUAL;

再猜猜这个会返回什么值呢?

再以SUBSTR为例:

SELECT SUBSTR('Let us go!',-5,5FROM DUAL;

这个将要返回什么值呢?

SELECT SUBSTR('Let us go!',-5,-5FROM DUAL;

这个又将会返回什么值呢?

三、小心隐藏参

我们仍然以LPAD为例:

SELECT LPAD('Let us go!',20FROM DUAL;

猜猜这个返回什么值呢?

SELECT SUBSTR('Let us go!',-5FROM DUAL;

这个将要返回什么值呢?

SELECT TRUNC(12.8251FROM DUAL;

这个又将会返回什么值呢?

  诸如此类在oracle的函数中是比比旨是,比如:substr,instr,trim等等~~~~个中奥妙还需个自体会。

Oracle中还提供了一批函数用来操纵xml数据,比如:XMLAGG,XMLCOLATTVAL,XMLCONCAT,XMLFOREST,XMLSEQUENCE,XMLTRANSFORM,EXTRACT(XML),UPDATEXML等,功能强悍,不过演示环境搭建稍嫌复杂,三言二语也说不清楚,我这里就不多做介绍了。感兴趣的话可以查看oracle官方文档或者直接跟我交流。

如果以上种种仍然不能满足你的需求,你还可以通过自己创建function的方式来实现,创建的语法格式非常简单,不属于本章内容就不多做介绍了,如果你想找个示例的话,俺之前写过一个oracle下的邮件发送有相关示例可供你参考,地址如下:http://www.itpub.net/825426.html

  最后补充一句再强大的功能,还是需要能够灵活使用才能够体现其价值,所以了解并不是我们的目地,熟练应用才是我们的目标:)。

 

网络安全产品综述

网络安全产品综述2003-12-10■Tanker■天极硬件频道目前,国内网络安全产品主要是以硬件为主,其中包括防火墙、入侵检测系统、防病毒网关、VPN、物理隔离卡等产品,其中以防火墙、入侵检测系统、...
  • wohao2000
  • wohao2000
  • 2004年08月21日 11:05
  • 3178

Oracle函数介绍

在SQL中有两种函数一种是单行函数,一种是多行函数.在sql与pl/sql中都自带了很多类型的函数,比如有字符、数字、日期、转换和混合型等多种函数用于处理单行数据,因此这些都被称为单行函数.这些函数都...
  • xueshuangshuang123
  • xueshuangshuang123
  • 2013年04月10日 10:24
  • 1064

oracle函数介绍

PL/SQL单行函数和组函数详解    函数是一种有零个或多个参数并且有一个返回值的程序。在SQL中Oracle内建了一系列函数,这些函数都可被称为SQL或PL/SQL语句,函数主要分为两大类: 单行...
  • andrew810808
  • andrew810808
  • 2007年05月23日 12:30
  • 556

ORACLE函数介绍

原文地址:http://www.cnblogs.com/zhahost/archive/2009/04/03/1428785.html ORACLE函数介绍 第一篇著名函数之单...
  • wangchenggong1988
  • wangchenggong1988
  • 2013年10月28日 10:36
  • 939

Oracle常用内置函数介绍及用法(二)

-- REGEXP_LIKE 正则表达式 /* ORACLE中的支持正则表达式的函数主要有下面四个: 1,REGEXP_LIKE :与LIKE的功能相似 2,REGEXP_INSTR :与IN...
  • u011453631
  • u011453631
  • 2013年07月29日 13:11
  • 2244

深度学习(Deep Learning)综述及算法简介

 深度学习(Deep Learning)综述及算法简介 作者: 张梓琪.CAS   前言:本文翻译自deeplearning网站,主要综述了一些论文、算法已经工具箱。   ...
  • jeiwt
  • jeiwt
  • 2014年06月14日 21:41
  • 5807

ITU-T Technical Paper: QoS 测量 (目标,方法,协议)

本文翻译自ITU-T的Technical Paper:《How to increase QoS/QoE of IP-based platform(s) to regionally agreed sta...
  • leixiaohua1020
  • leixiaohua1020
  • 2013年10月30日 11:23
  • 3344

图像去雾技术综述

研究图像去雾技术有一段时间,阅读很多文献以及实现了很多算法。因此将个人对图像去雾技术的理解写成这篇文章,避免自己忘记,以及跟广大网友交流学习。 1、概述 图像去雾的研究算法有很多,但是主要分为...
  • u013684730
  • u013684730
  • 2017年08月04日 16:55
  • 872

第八篇 查看监控数据

创建好主机监控任务后,就可以查看被监控机器的相关性能,点击监测中-》最新数据 就可以看到目前对主机的所有监控任务。点击每个监控项最右侧的图形就可以看到由该监控项实时监控的数据绘成的图形。除了可以查看监...
  • u012062455
  • u012062455
  • 2016年11月17日 15:16
  • 1314

Oracle函数介绍:decode

1、Oracle函数介绍:decode   Sql代码  select sum(DECODE(C810000125,'是',1,0))/COUNT(1) 合格率 FROM t581  统计合格...
  • u014567013
  • u014567013
  • 2015年02月09日 20:06
  • 165
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:ORACLE函数介绍第八篇 综述
举报原因:
原因补充:

(最多只允许输入30个字)