一、SQLServer中的CHARINDEX() 和ORACLE中的INSTR()函数

  1、INSTR(C1,C2[,I[,J]])

  【功能】在一个字符串中搜索指定的字符,返回发现指定的字符的位置;

  【说明】多字节符(汉字、全角符等),按1个字符计算

  【参数】 C1 被搜索的字符串

C2 希望搜索的字符串

I 搜索的开始位置,默认为1

J 第J次出现的位置,默认为1

  【返回】数值

  【示例】

   select instr('abcdefgc','c',1,2) from dual;

    返回:8

  2、CHARINDEX(C1,C2[,I])

  【功能】在一个字符串中搜索指定的字符,返回发现指定的字符的位置;

  【说明】多字节符(汉字、全角符等),按1个字符计算

  【参数】C1希望搜索的字符串

           C2被搜索的字符串

      I 搜索的开始位置,默认为1

  【返回值】数值

  【实例】

  select charindex('c','abcdefgc',4)

    返回:8

  【总结】需要注意的地方是虽然INSTRCHARINDEX函数实现的功能相同,但C1,C2表示的意思完全相反,而且INSTR的功能更强大,可以查找第J次出现的位置。

二、SQLServer/MySQL中的SUBSTRING()  和ORACLE中的SUBSTR()函数

  功能:返回字符、二进制、文本或图像表达式的一部分

  语法:SUBSTRING ( expression, start, length )

  SQL 中的 substring 函数是用来抓出一个栏位资料中的其中一部分。这个函数的名称在不同的资料库中不完全一样:

      •   MySQL: SUBSTR(), SUBSTRING()
      •   Oracle: SUBSTR()
      •   SQL Server: SUBSTRING()

  参数:

    expression 字符串、二进制字符串、文本、图像、列或包含列的表达式。请勿使用包含聚合函数的表达式。

    start 整数或可以隐式转换为 int 的表达式,指定子字符串的开始位置。

    length 整数或可以隐式转换为 int 的表达式,指定子字符串的长度。
  返回值:

    如果 expression 是一种支持的字符数据类型,则返回字符数据。如果 expression 是一种支持的二进制数据类型,则返回二进制数据。如果 start = 1,则子字符串从表达式的第一个字符开始。

    返回字符串的类型与给定表达式的类型相同(下表所示内容除外)。

  示例:

    select SUBSTRING(displayname,3,len(displayname) from table where len(displayname)>3;--SQLServer

    select SUBSTR(displayname,3,length(displayname) from table where length(displayname)>3;--ORACLE

http://www.cnblogs.com/ivan0626/p/3664548.html

http://www.cnblogs.com/xionglee/articles/1444927.html

SQL中CHARINDEX()/INSTR()函数和SUBSTRING()/SUBSTR()函数的更多相关文章

  1. SQL中Charindex和Oracle中对应的函数Instr

    转:http://blog.csdn.net/zhuyu19911016520/article/details/8568640 sql :charindex('字符串',字段)>0 charin ...

  2. 关于js的string的3个函数slice,substring,substr对比

    slice,substring,substr三个函数都是截取字符串,但是对参数的处理有区别 参数处理相似的两个函数式slice和substring slice(start,end)和substring ...

  3. Sql中CHARINDEX用法

    CHARINDEX作用 写SQL语句我们经常需要判断一个字符串中是否包含另一个字符串,但是SQL SERVER中并没有像C#提供了Contains函数,不过SQL SERVER中提供了一个叫CHAEI ...

  4. 字符串截取函数slice, substring, substr

    在日常项目需求中,常常会遇到需要截取字符串操作的工作,而ECMAScript为我们提供了原生的截取字符串的函数,而且提供了三个:slice, substring, substr.我们怎么判断在什么时候 ...

  5. sql中charindex

    假如你写过很多程序,你可能偶尔会碰到要确定字符或字符窜串否包含在一段文字中,在这篇文章中,我将讨论使用CHARINDEX和PATINDEX函数来搜索文字列和字符串.我将告诉你这两个函数是如何运转的,解 ...

  6. sql中charindex的用法

    转自:https://www.cnblogs.com/beeone/p/3621743.html CHARINDEX和PATINDEX函数常常用来在一段字符中搜索字符或者字符串.如果被搜索的字符中包含 ...

  7. sql中charindex和cast结合使用

    1.CHARINDEX函数常常用来在一段字符中搜索字符或者字符串. 语法 CHARINDEX ( expression1 , expression2 [ , start_location ] ) 返回 ...

  8. js字符串函数之substring() substr()

    substring 方法用于提取字符串中介于两个指定下标之间的字符 substring(start,end) 开始和结束的位置,从零开始的索引 参数     描述start     必需.一个非负的整 ...

  9. SQL中一种类似GUID值的函数实现

        开发中会需要用到多列值组合成一个ID值的情况.比如做数据清洗的时候,一张表A有五列,分别是医院.科室.医生.职称.电话.面有许多重复的数据需要和另一个表B(和A列相同)做对比.清洗需要做两件事 ...

随机推荐

  1. cookies

    Cookie[] cookies=request.getCookies(); for(Cookie c:cookies) out.println(c.getValue()+" ") ...

  2. @RequestMapping映射请求

     1.SpringMVC使用@RequestMapping注解为控制器指定可以处理哪些URL请求.   2.在控制器的类定义和方法定义处都可标注@RequestMapping   2.1 类定义处:提 ...

  3. GJM : 用JIRA管理你的项目(一)JIRA环境搭建 [转载]

    感谢您的阅读.喜欢的.有用的就请大哥大嫂们高抬贵手"推荐一下"吧!你的精神支持是博主强大的写作动力以及转载收藏动力.欢迎转载! 版权声明:本文原创发表于 [请点击连接前往] ,未经 ...

  4. JavaScript基础------入门基础

    JavaScript他是一种描述性语言,使用JavaScript就是为了能和网页有更好的交互,下面切入主题进行讲解. 一.JavaScript 1.什么是JavaScript JavaScript是一 ...

  5. .net c# 视频剪切抓取缩略图

    public string Cut(string ffmpegPath, string videoPath, string savePath, string imgSize, int sleepTim ...

  6. DOM事件类型详解

    一.表单事件: input事件当<input>.<textarea>的值发生变化时触发.此外,打开contenteditable属性的元素,只要值发生变化,也会触发input事 ...

  7. Web自动化测试 Selenium 1/3

    Selenium 名字的来源 在这里,我还想说一下关于 Selenium 名字的来源,很有意思的 : > : Selenium 的中文名为 “ 硒 ” ,是一种化学元素的名字,它 对 汞 ( M ...

  8. Maven下SiteMesh的使用

    先白扯两句,为什么用SiteMesh,当然是减少重复代码,让程序员更加转自己的那一小块. 优点呢:结构化,重用 缺点:呵呵呵,性能,尤其是GC 至于3.0是不是有很大提升,请大神来分析一下. 性能你还 ...

  9. Android TextView 高亮字体并添加点击事件

    运行效果 package com.zutil.lib; import android.graphics.Typeface; import android.os.Bundle; import andro ...

  10. 如何让光标处于EditText的末尾

    经测试发现,如果EditText预先有内容,光标自然会在文字的末尾 . 但是如果预先内容为空,然后设置好内容,这种情况下光标自然会在文字的开头,所以这种情况下可以这样做让光标位于末尾: editTex ...