INSTR
用法:INSTR(string,subString,position,ocurrence)
解释:string:源字符串
      subString:要查找的子字符串
      position:查找的开始位置.若起始位置为0,返回值为0,因为下标是从1 开始的,起始位置为0,则表示不查找。既然不查找,就直接返回0,表示找不到了喽;当起始位置为负数的时候,从右边开始查找。
      ocurrence:源字符串中第几次出现的子字符串

  返回找到的位置(字符串下标是从0开始,如果查找到),如果找不到则返回0. 默认查找顺序为从左到右。

SELECT INSTR('CORPORATE FLOOR', 'OR', 0, 1) FROM DUAL; -- 返回值为0

SELECT INSTR('CORPORATE FLOOR', 'OR', 2, 1) FROM DUAL; -- 返回值为2

SELECT INSTR('CORPORATE FLOOR', 'OR', 3, 1) FROM DUAL; -- 返回值为5

SELECT INSTR('CORPORATE FLOOR', 'OR', 2, 2) FROM DUAL;  --返回值为5

SELECT INSTR('CORPORATE FLOOR', 'OR', -1, 1) FROM DUAL; --返回值为14

SELECT INSTR('CORPORATE FLOOR', 'OR', -5, 1) FROM DUAL; --返回值为5

SUBSTR用法:SUBSTR(string,start_position,[length] ) 求子字符串,返回字符串
解释:string 元字符串
       start_position   开始位置(从1开始,如果写0,意义等同于1,即从第一个字符开始。如果是负数,则开始位置则从字符串末端开始从右到左数,但根据length截取字符串时,仍然采取从左至右数length个的字符)
       length 可选项,子字符串的个数

SELECT SUBSTR('This is a test', 0, 2) value from dual;  --返回值Th
SELECT SUBSTR('This is a test', 1, 2) value from dual; --返回值Th
SELECT SUBSTR('This is a test', -1, 2) value from dual; --返回值t,因为截取时,仍采取从左至右,因为只有一个字符t,就返回一个t SELECT SUBSTR('This is a test', -2, 2) value from dual; --返回值st

NVL用法:NVL(eExpression1, eExpression2)

  从两个表达式返回一个非 null 值。如果eExpression1的计算结果为null值,则 NVL( ) 返回eExpression2。如果eExpression1的计算结果不是null值,则返回eExpression1。eExpression1 和eExpression2可以是任意一种数据类型。如果eExpression1与eExpression2 的结果皆为 null值,则NVL( )返回NULL。

SELECT nvl('pos1',null) from dual; --返回值为pos1

SELECT nvl(null,'pos2') from dual; --返回值为pos1

SELECT nvl(null,null) from dual;    --返回值为null,即使用 is null进行判断时,会返回true

select sysdate from dual
where nvl(null,null) is null;--返回2016/5/27 23:58:54

http://www.cnblogs.com/ningvsban/p/3586218.html

http://www.cnblogs.com/qqzy168/archive/2013/05/28/3103085.html

在Oracle中,不等号有三种:<>,!=,^=

  例如:

  select * from test where name<>'xn'。返回的结果是name不为xn,且name不空的记录。但是这与我们想要得到的结果有出入,因为我们的目的是得到name为xn的全部记录,当然这也包括name为空的记录,所以这些写SQL语句是有问题的。为了解决这个问题,我们可以采用以下两种方案:

select * from test where instr(concat(name,'xx'),'xn') = 0 ;

select * from test where nvl(name,'xx')<>'xn' ;

  备注:null只能通过is null或者is not null来判断,其它操作符与null操作都是false。

  各数据库中的字符串连接方法

  1)MySQL:CONCAT()

  2)Oracle:CONCAT(),||

  3)SQL Server: +

例如:

SELECT 'this is '+'a test';                         返回值this a test

SELECT CONCAT('this is ','a test') from dual;   返回值this a test

SELECT 'this is '||'a test' from dual;           返回值this a test

http://www.cnblogs.com/ningvsban/p/3586223.html

Oracle 常见函数使用汇总的更多相关文章

  1. Oracle 数据库知识汇总篇

    Oracle 数据库知识汇总篇(更新中..) 1.安装部署篇 2.管理维护篇 3.数据迁移篇 4.故障处理篇 5.性能调优篇 6.SQL PL/SQL篇 7.考试认证篇 8.原理体系篇 9.架构设计篇 ...

  2. Oracle常用函数汇总

    在Oracle OCP考试中,相当一部分知识点涉及到对于Oracle常见函数的考查.尽管Oracle官方文档SQL Language Reference中Functions一章内列举了所有Oracle ...

  3. Oracle横向纵向汇总

    Oracle横向纵向汇总 有一张表test 如下, (NO 学生编号 ,cj 成绩) NO name KM CJ 001 张三 语文 80  001 张三 数学 86  001 张三 英语 75  0 ...

  4. ORACLE| ORACLE基础语法汇总

    创 ORACLE| ORACLE基础语法汇总 2018-07-18 16:47:34 YvesHe 阅读数 9141更多 分类专栏: [数据库]   版权声明:本文为博主原创文章,遵循CC 4.0 B ...

  5. ORACLE常用函数汇总(持续更新中....)

    在使用ORACLE过程中,把一些常用的函数的相关用法,注意事项进行简单的汇总,便于自己查询参考. DBMS_RANDOM包 dbms_random是一个可以生成随机数值或者字符串的程序包.这个包有in ...

  6. Oracle基础知识汇总一

    Oracle基础知识 以下内容为本人的学习笔记,如需要转载,请声明原文链接   https://www.cnblogs.com/lyh1024/p/16720759.html oracle工具: SQ ...

  7. oracle 资源学习汇总

    1:修改密码   http://blog.csdn.net/qh_java/article/details/23202259 2:Oracle数据库.实例.用户.表空间.表之间的关系

  8. Oracle 常见函数

    1.把数字转换为字符串:To_char(数字) 2.Oracle 拼接字符串: || ':' || select  字段1 || ':' || 字段2 from  table  :字段1:字段2 3. ...

  9. Oracle存储过程知识汇总

    基本语法篇: CREATE OR REPLACE PROCEDURE 存储过程名 //CREATE OR REPLACE PROCEDURE 是一个SQL语句通知Oracle数据库去创建一个叫做ske ...

随机推荐

  1. Android编程 获取网络连接状态 及调用网络配置界面

    获取网络连接状态 随着3G和Wifi的推广,越来越多的Android应用程序需要调用网络资源,检测网络连接状态也就成为网络应用程序所必备的功能. Android平台提供了ConnectivityMan ...

  2. JS中 document.getElementById 对象

    Document 对象 每个载入浏览器的 HTML 文档都会成为 Document 对象. Document 对象使我们可以从脚本中对 HTML 页面中的所有元素进行访问. 提示:Document 对 ...

  3. js中 正則表達式

    正則表達式使用具体解释 简单介绍 简单的说,正則表達式是一种能够用于模式匹配和替换的强有力的工具.其作用例如以下: 測试字符串的某个模式.比如,能够对一个输入字符串进行測试,看在该字符串是否存在一个电 ...

  4. NodeJS - Express4.0错误:Cannot read property &amp;#39;Store&amp;#39; of undefined

    Express在使用mongodb的时候app配置出错 //settings.js module.exports={ cookieSecret:"xxxx", db:"d ...

  5. Android 之流媒体播放器,广播侧下方这么简单。

    没有其他的.希望从事流媒体开发案例.还承诺提供朋友博客.上个星期.制定出最后一点机会. 在这里,与大家分享. 首先要明白的概念:什么是流媒体?转载请注明出处http://blog.csdn.net/g ...

  6. JAVA: httpclient 具体解释——第五章;

    httpclient 具体解释--第一章: httpclient 具体解释--第二章: httpclient 具体解释--第三章: httpclient 具体解释--第四章: httpclient 具 ...

  7. WPF命令參数CommandParameter

    XAML代码例如以下: <Window x:Class="Demo006.MainWindow" xmlns="http://schemas.microsoft.c ...

  8. 将 Android* x86 NDK 供 Eclipse* 而移植 NDK 演示示例应用程序

    目标 面向 Eclipse (ADT) 的 Android 插件如今支持基于 NDK 的应用开发. 其可自己主动生成项目和构件文件以及代码存根.并可集成到整个 Android 应用开发中(构建原生库. ...

  9. Java贪吃蛇游戏

    package snake.game; import java.awt.CardLayout; import java.awt.Color; import java.awt.Graphics;   i ...

  10. FastDFS源代码分析之tracker协议分析

    本篇博客主要解说fastdfs中tracker协议的解说. fastdfs主要是存储文件.直接把整个文件存储到磁盘上,所以.简单直接.可是也有非常大的局限性. 因此,fastdfs对文件的文件夹设置和 ...