zoukankan      html  css  js  c++  java
  • SqlServer中SubString与CharIndex函数的使用

    一、CHARINDEX

    1:CHARINDEX语法:

        CHARINDEX ( expression1 ,expression2 [ , start_location ] )

    2:参数

        expression1

    一个表达式,其中包含要查找的字符的序列。expression1 是一个字符串数据类别的表达式。

      expression2

    一个表达式,通常是一个为指定序列搜索的列。expression2 属于字符串数据类别。

      start_location

    开始在 expression2 中搜索 expression1 时的字符位置。如果 start_location 未被指定、是一个负数或零,则将从 expression2 的开头开始搜索start_location 可以是 bigint 类型。

    3:返回类型

    如果 expression2 的数据类型为 varchar(max)nvarchar(max)varbinary(max),则为 bigint,否则为 int

    4:备注

    如果在 expression2 内找不到 expression1,则 CHARINDEX 返回 0

    CHARINDEX 将根据输入的排序规则执行比较操作。若要以指定排序规则进行比较,则可以使用 COLLATE 将显式排序规则应用于输入值。

    返回的开始位置从 1 开始,而非从 0 开始。

    4:例子

    select charindex('A','BADF',1)  :2

    select charindex('A','BADF',0)  :2

    select charindex('A','BADF',2)  :2

    select charindex('A','BADF',3)  :0

    select charindex('G','BADF',3)  :0

     

    二、SUBSTRING

    1、语法

    SUBSTRING ( expression ,start , length )

    2、参数

    expression

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

    start

    指定子字符串开始位置的整数。start 可以为 bigint 类型。

    length

    一个正整数,指定要返回的 expression 的字符数或字节数。如果 length 为负,则会返回错误。length 可以是 bigint 类型。

    3、备注

    必须以字符数指定使用 ntextcharvarchar 数据类型的偏移量(startlength)。必须以字节数指定使用 textimagebinaryvarbinary 等数据类型的偏移量。

    4、例子:

    select substring('GXS',-1,3) :G

    select substring('GXS',-1,2) :NULL

    select substring('GXS',0,1)  :NULL

    select substring('GXS',1,1)  :G

    select substring('GXS',1,2)  :GX

  • 相关阅读:
    java标识符的作用和命名规则
    Java还是编程语言中的老大?凭什么长期霸占第一宝座?
    JavaScript基础内容中的函数详解
    SpringMVC配置文件 中 mvcview-controller 标签的使用
    说说JVM原理?内存泄漏与溢出的区别?何时产生内存泄漏?
    SpringMVC和Spring的配置文件扫描包详解
    Mybatis配置详解
    关于Redis的常见面试题解析
    jQuery杂谈一
    LeetCode-212 单词搜索 II
  • 原文地址:https://www.cnblogs.com/smallstone/p/1729031.html
Copyright © 2011-2022 走看看