最近一段时间连续的做了几十张报表,通过原生sql对数据进行分析 ,也算是有了一定的了解,发现其中一些函数和表达式使用频率较高,现总结如下:

(1)、round()函数

       round函数说白了就是把一个数按照指定的小数位元数进行四舍五入运算的结果

     语法形式:ROUND( number, decimal_places )

     number: 需要处理的数值

       decimal_places : 四舍五入 , 小数取几位 ( 预设为 0 )

     例子:

     select round(123.456, 0) from dual; 回传 123 
     select round(123.456, 1) from dual; 回传 123.5 
     select round(123.456, 2) from dual; 回传 123.46 
     select round(123.456, 3) from dual; 回传 123.456 
     select round(-123.456, 2) from dual; 回传 -123.46

  (2)、to_char()函数

     语法形式:to_char(date,’格式模型’)

          to_char(numeric,’格式模型’)

     to_char()函数基本上也是我们用的最多的函数了,把日期或数字转换为字符串,不能指定字符串长度。

      在做报表方面更多的是使用to_char() 对数字进行特定格式化,接round函数,我们想保留一个数字的有效两位数字,我们就可以结合round,   

 TO_CHAR(ROUND((T.MONTH_TOTAL - T.LAST_MONTH_TOTAL) /
T.LAST_MONTH_TOTAL * 100, 2), 'FM999990.00')

      然后to_char()还有很多格式化的语句, 继续学习。

   (3)、decode()函数  

      这个函数目前还只有oracle的 pl/sql提供了这个功能,功能十分强大     

      语法形式:decode(条件,值1,翻译值1,值2,翻译值2,值n,翻译值n,... 缺省值),

      IF 条件=值1 THEN
        RETURN(翻译值1)
      ELSIF 条件=值2 THEN
        RETURN(翻译值2)
          ......
      ELSIF 条件=值n THEN
        RETURN(翻译值n)
      ELSE
        RETURN(缺省值)
      END IF

    当然decode函数另一个比较常用的功能就是比较大小,   

    select decode(sign(变量1-变量2),-1,变量1,变量2) from dual; --取较小值   
    sign()函数根据某个值是0、正数还是负数,分别返回0、1、-1

    eg:    

    变量1=10,变量2=20

    则sign(变量1-变量2)返回-1,decode解码结果为“变量1”,达到了取较小值的目的。这个功能在报表分析的时候,使用的就不算多了。

     其他也有很多使用高频的函数,如sum(),count(),nvl()等等,以后我还会继续总结!!!

     

orale做报表常用函数和表达式的总结的更多相关文章

  1. 用Excel做数据分析常用函数(数据清理、关联匹配……)

    本文总结在使用Excel进行数据分析时,最常用的功能和函数. Excel的功能和函数非常多,用进废退,除了学习基本的函数和功能,最重要的是遇到问题可以快速的搜索并解决. 首先Excel可以处理的数据量 ...

  2. web报表工具FineReport常用函数的用法总结(日期和时间函数)

    web报表工具FineReport常用函数的用法总结(日期和时间函数) 说明:凡函数中以日期作为参数因子的,其中日期的形式都必须是yy/mm/dd.而且必须用英文环境下双引号(" " ...

  3. [转]SQLServer和Oracle,存储过程区别,常用函数对比

    本文转自:http://www.cnblogs.com/neru/archive/2011/08/18/2144049.html 以前一直用sqlserver,只有很少的一点oracle的经验,现在要 ...

  4. oracle常用函数及示例

    学习oracle也有一段时间了,发现oracle中的函数好多,对于做后台的程序猿来说,大把大把的时间还要学习很多其他的新东西,再把这些函数也都记住是不太现实的,所以总结了一下oracle中的一些常用函 ...

  5. SQL SERVER 字符串常用函数

    在开发T-SQL时,经常会需要对字符串进行各种各样的操作,下面介绍常用的字符串函数. 1.获取字符的ASCII码 ASCII ASCII码是对字符的标准编码.要获取字符的ASCII码就可以通过调用AS ...

  6. Python常用函数、方法、模块记录

    常用函数: 1.pow():乘方 2.abs():绝对值 3.round():四舍五入 4.int():转换为整数 5.input():键盘输入(会根据用户的输入来做类型的转换) raw_input( ...

  7. mysql常用函数参考

    mysql常用函数参考   对于针对字符串位置的操作,第一个位置被标记为1. ASCII(str) 返回字符串str的最左面字符的ASCII代码值.如果str是空字符串,返回0.如果str是NULL, ...

  8. [SQL SERVER系列]之常用函数和开窗函数介绍及实例

    本文主要介绍SQL SERVER数据库中一些常用的系统函数及其SQL SERVER 2005以上支持的开窗函数. 1.常用函数 --从字符串右边截取指定字符数 select RIGHT('HELLO' ...

  9. SQL常用函数

    SQL中常用的函数有类型转换函数.字符串函数和日期使用函数.更多具体的函数用法参见DBMS中的帮助文档. 类型转换函数 cast(值 as 类型) update 表名 set 列1=列1+cast(列 ...

随机推荐

  1. 动态代理CGlib实例

    1.委托类: package 动态代理2; //需要对这个类进行增强 public class UserService { public void create() { System.out.prin ...

  2. 2015北京网络赛A题The Cats' Feeding Spots

    题意:给你一百个点,找个以这些点为中心的最小的圆,使得这个圆恰好包含了n个点,而且这个圆的边界上并没有点 解题思路:暴力枚举每个点,求出每个点到其他点的距离,取第n大的点,判断一下. #include ...

  3. leetcode@ [116/117] Populating Next Right Pointers in Each Node I & II (Tree, BFS)

    https://leetcode.com/problems/populating-next-right-pointers-in-each-node-ii/ Follow up for problem ...

  4. 2016多校第六场题解(hdu5793&hdu5794&hdu5795&hdu5800&hdu5802)

    这场就做出一道题,怎么会有窝这么辣鸡的人呢? 1001 A Boring Question(hdu 5793) 很复杂的公式,打表找的规律,最后是m^0+m^1+...+m^n,题解直接是(m^(n+ ...

  5. [思维题]Bored Qishen

    给出一个整数集,其中包含1-n的所有整数,要求挑选出一个元素最多的子集,使得子集中任意两数的乘积不是完全平方数 (n<=10^6) 求这样一个最大子集的元素个数 #include <cst ...

  6. 教程-Supports判断接口(Instance)是否支持

    function TCommandEnabledController.GetCommandVisible(const ACommandName: string): Boolean; var I: In ...

  7. URL- 含义及组成

    URL (uniform resource locator) : 互联网的每个网页都有自己唯一的统一资源定位器,由3部分组成:通信协议,主机名,资源名. HTTP(hypertext transfer ...

  8. Hibernate中对象的3种状态:瞬时态、持久态、脱管态

    Hibernate的对象有3种状态,分别为:瞬时态(Transient). 持久态(Persistent).脱管态(Detached).处于持久 态的对象也称为PO(Persistence Objec ...

  9. Sass 默认样式库

    Sass 默认初始化样式库 @charset "utf-8"; // 变量存储 // 字体Unicode编码 微软雅黑:\5FAE\8F6F\96C5\9ED1 , 宋体:\5B8 ...

  10. Hibernate的BaseDao辅助类

    1.BaseDao接口类,该类封装了一些hibernate操作数据库的一些常用的方法,包括分页查询,使用该类极大的简化了hibernate的开发 BaseDao.java package com.kj ...