最近在读数据库存储过程,或者在xml里写sql时用到数据库函数,笔者觉得有必要总结一下,当然有的函数笔者也很懵逼,不过可以问度娘啊!好了!开始正题。

select nvl(null,1)s from dual;--1 若nvl第一个参数为空或'',则返回第二个元素
select nvl2(null,2,1)s from dual;--1 若nvl2 第一个元素为空或'',则返回第二个元素 select decode('',111,1000,200,2000,0)s from dual;--如果seed为111,则取1000;为200,取2000;其它取0 select instr('lidelinlidelin','i',3,3)s from dual;--13 查找i在字符串从第三个位置起第三次出现的下标
select instr('lidelinlidelin','w',3)s from dual;--0 查找w在字符串从第三个位置起第一次出现的下标 select substr('lidelinlidelin',2,3)s from dual;--ide 截取字符串,从第二个开始,取三个 select length('delin Li') s from dual;--8 查看字符串长度
select lengthb('delin Li') s from dual;--8 查看字符串长度 select ascii('as')s from dual;--97 返回第一个字母的ASCII码
select chr(97)s from dual;--a 函数返回十进制表示的字符 select concat('delin',' Li')s from dual;--delin Li 将字符串拼接
select 'Hello! '||'hello world!' from dual;-- Hello! hello world!字符串连接
select initcap('delin li')s from dual;--Delin Li 将每个单词的第一个字母大写其它字母小写返回。单词由空格,控制字符,标点符号分隔 select lower('LIDELIN')s from dual;-- lidelin 将字母变为小写
select upper('lidelin')s from dual;--LIDELIN 将字母变为大写
select initcap('efg')s from dual; --Efg 将首字母大写 select lpad('lidelin',9,'A')s from dual;--AAlidelin 小于9个字符时左边补A
select rpad('lidelin',9,'A')s from dual;--lidelinAA 小于9个字符时右边补A select ltrim('000lidelin','')s from dual;--lidelin 将左边0取消
select rtrim('lidelin000','')s from dual;--lidelin 将右边0取消
select trim(' delin Li ')s from dual; --delin Li 将字符串两边空格去掉
select trim(leading 9 from 9998767999) s1,trim(trailing 9 from 9998767999) s2,trim(9 from 9998767999) s3 from dual; -- 8767999 9998767 8767 select replace('lidelin','l','L')s from dual;--LideLin 将字符串中l替换为L select soundex('lidelin')s from dual;--L345 返回字符串参数的语音表示形式 select translate('lidelin','dn','s')s from dual;--liseli 字符串中字符存在于为'dn'中时,替换为对应值,d变为s,n变为空 select round(123.456,1)s from dual;--123.5 小数位保留一位四舍五入
select trunc(123.456,1)s from dual;--123.4 小数保留一位不不进行四舍五入
select mod(9,5)s from dual; --求余
select trunc(65/33)s from dual;-- 1 取整
select ceil(65/60)s from dual;-- 2 取整 select sign(-2.1)s from dual;-- -1 判断数字是否为正数 -1否
select sign(2.1)s from dual;-- 1 判断数字是否为正数 1是 select user from dual;--MTRSCDE 查询当前数据库登陆账户名
select vsize('lidelin')s from dual;--7 返回表达式所需的字节数
select nullif('lidelin','lidelin')s from dual;-- 空 值相等返空,否则返回第一个值
select coalesce('','','e','lidelin')s from dual;-- 111 返回列表中第一个非空表达式 --日期和字符转换函数用法(to_date,to_char)
select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') as nowTime from dual; -- 2017-12-04 15:02:25 日期转化为字符串
select to_char(sysdate,'yyyy') as nowYear from dual; -- 2017 获取时间的年
select to_char(sysdate,'mm') as nowMonth from dual; -- 12 获取时间的月
select to_char(sysdate,'dd') as nowDay from dual; -- 04 获取时间的日
select to_char(sysdate,'hh24') as nowHour from dual; -- 15 获取时间的时
select to_char(sysdate,'mi') as nowMinute from dual; -- 02获取时间的分
select to_char(sysdate,'ss') as nowSecond from dual; -- 25获取时间的秒 select to_date('2017-12-04 15:02:25','yyyy-mm-dd hh24:mi:ss') as nowTime from dual; -- 2017/12/4 15:02:25 字符串转化为日期
select to_char(sysdate,'yyyy-mm-dd q ww w hh24:mi:ss') as nowTime from dual; -- 2017-12-04 4 49 1 15:07:33 2017年 第四季度,当年第49个周,当月第1个周 15点07分33秒 select to_char(to_date('2017-12-04','yyyy-mm-dd'),'day')s from dual; --星期一
select to_char(to_date('2017-12-04','yyyy-mm-dd'),'day','NLS_DATE_LANGUAGE = American')s from dual; --monday select floor(sysdate - to_date('2017-12-01','yyyy-mm-dd')) days from dual;-- 3 两个日期间的天数
select months_between(to_date('2017-10-01','yyyy-mm-dd'),to_date('2017-12-01','yyyy-mm-dd')) months FROM DUAL; -- -2 两个日期间的月数

由于时间紧促,在这里就总结一下部分常用oracle函数,当然大家觉得那些有必要添加进去的函数,希望朋友们能提出来!如有错误,还望斧正!

oracle常用函数总结(一)的更多相关文章

  1. Oracle常用函数

    前一段时间学习Oracle 时做的学习笔记,整理了一下,下面是分享的Oracle常用函数的部分笔记,以后还会分享其他部分的笔记,请大家批评指正. 1.Oracle 数据库中的to_date()函数的使 ...

  2. Oracle常用函数:DateDiff() 返回两个日期之间的时间间隔自定义函数

    首先在oracle中没有datediff()函数可以用以下方法在oracle中实现该函数的功能:1.利用日期间的加减运算天:ROUND(TO_NUMBER(END_DATE - START_DATE) ...

  3. oracle常用函数总结(二)

    之前也有写过“oracle常用函数总结(一)”,为了尽量找全常见oracle函数,笔者特意查找了相关资料来作为参考,下边给大家罗列出来,部分和之前有重复的,希望能帮到大家! 列举了31个函数和1个分组 ...

  4. oracle常用函数总结

    Oracle常用函数总结 ---oracle常用函数-----一.数值型常用函数----取整数--select floor(10.1) from dual;--将n四舍五入,保留小数点后m位(默认情况 ...

  5. oracle常用函数整理

    oracle常用函数整理    1.绝对值.取余.判断数值正负函数    绝对值:ABS(n)        示例: SELECT ABS(100),ABS(-100),ABS('100') FROM ...

  6. oracle常用函数积累

    --oracle常用函数积累-- --1.字符串长度:LENGTH ,语法: CONCAT(string) --示例 select LENGTH('AA_BB') from dual;--结果:5 - ...

  7. ORACLE常用函数的使用方法

    ORACLE常用函数的使用方法 1. 字符串函数 (1) length(); 获取字符长度SELECT LENGTH('中国') FROM PLATFORM_METAINFO_TABLES WHERE ...

  8. SQL操作数据——SQL组成,查询基础语法,where,Oracle常用函数等

    SQL组成 DML数据操作语言 DCL数据控制语言 DQL数据查询语言 DDL数据定义语言 查询基础语法 记录筛选 where 子句 记录筛选 where 子句 实例练习 实例练习 Select语句中 ...

  9. oracle常用函数及示例

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

  10. 十、oracle 常用函数

    一.字符函数字符函数是oracle中最常用的函数,我们来看看有哪些字符函数:lower(char):将字符串转化为小写的格式.upper(char):将字符串转化为大写的格式.length(char) ...

随机推荐

  1. openstack-ansible -- 3 Target hosts

    Installing the operating system Install the Ubuntu Server 14.04 (Trusty Tahr) LTS 64-bit operating s ...

  2. print webpage

    使用浏览器打印网页时(A4纸)有一个固定的尺寸: 高级浏览器: width:700px height:1000px

  3. Linux命令之awk_1

    简介 awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大.简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再 ...

  4. mpv 播放器

    https://mpv.io/ Mac版本: 官网: https://mpv.io/ https://mpv.io/installation/ 下载: http://sva.wakku.to/~chr ...

  5. 去除编译警告@SuppressWarnings注解用法详解(转)

    使用:@SuppressWarnings(“”)@SuppressWarnings({})@SuppressWarnings(value={}) 编码时我们总会发现如下变量未被使用的警告提示: 上述代 ...

  6. BZOJ - 3123 森林 (可持久化线段树+启发式合并)

    题目链接 先把初始边建成一个森林,每棵树选一个根节点递归建可持久化线段树.当添加新边的时候,把结点数少的树暴力重构,以和它连边的那个点作为父节点继承线段树,并求出倍增数组.树的结点数可以用并查集来维护 ...

  7. BZOJ - 2588 Spoj 10628. Count on a tree (可持久化线段树+LCA/树链剖分)

    题目链接 第一种方法,dfs序上建可持久化线段树,然后询问的时候把两点之间的所有树链扒出来做差. #include<bits/stdc++.h> using namespace std; ...

  8. ENTRYPOINT 与 CMD

    在Dockerfile中 ENTRYPOINT 只有最后一条生效,如果写了10条,前边九条都不生效 ENTRYPOINT 的定义为运行一个Docker容器像运行一个程序一样,就是一个执行的命令 两种写 ...

  9. java-03方法课堂练习

    1.java中利用static(静态),将方法放入类中.如果不加static,必须先实例化出来一个类,之后再通过实例化类名+方法的形式调用. 2.编写一个方法,使用以上算法生成指定数目(比如1000个 ...

  10. 《Javascript高级程序设计》阅读记录(五):第六章 上

    这个系列以往文字地址: <Javascript高级程序设计>阅读记录(一):第二.三章 <Javascript高级程序设计>阅读记录(二):第四章 <Javascript ...