zoukankan      html  css  js  c++  java
  • SQL SERVER 2008 函数大全 字符串函数

    /* 
    1,ASCII返回字符表达式中最左侧字符的ASCII代码值
    仅返回首字母的ASCII码值
    parameter    char或varchar
    returns        integer
     */
    SELECT ASCII('a') --97
    SELECT ASCII('A') --65
    SELECT ASCII('aA') --97
    SELECT ASCII('0') --48
    SELECT ASCII('01') --48
     
     
     
    /* 
    2,CHAR将整数ASCII代码转换为字符
    parameter    TINYINT
    returns        char(1)
     */
    SELECT CHAR(97)--a
    SELECT CHAR(65)--A
    --SELECT CHAR('A')--在将 varchar'A' 转换成数据类型 int 时失败。
     
     
     
    /*
    3,CHARINDEX返回表达式中指定字符的开始位置
    parameter
        搜索表达式varchar
        要搜索的表达式varchar
        开始位置bigint
    returns integer|bigint
    其中第三个参数仅影响查询开始位置,不会影响返回结果
    例如,需要忽略前50个字符,从第50个字符往后开始查找,并返回位置即可使用该参数
    默认从位置1处开始查询
    */
    SELECT CHARINDEX('b','abcdefg',0)--2
    SELECT CHARINDEX('b','abcdefg',1)--2
    SELECT CHARINDEX('b','abcdefg',2)--2
    SELECT CHARINDEX('b','abcdefg',3)--0
     
     
     
    /*
    4,DIFFERENCE以整数返回两个字符表达式的SOUNDEX值之差
    parameter    表达式varchar
    parameter    表达式varchar
    SOUNDEX是一种语音算法,利用英文字的读音计算近似值,值由四个字符构成,第一个字符为英文字母,后三个为数字。在拼音文字中有时会有会念但不能拼出正确字的情形,可用Soundex做类似模糊匹配的效果。
    http://zh.wikipedia.org/zh-cn/Soundex
    */
    SELECT DIFFERENCE('bet','bit')--3
     
     
     
    /*
    5,LEFT返回字符表达式最左侧指定数目的字符
    parameter    表达式varchar|nvarchar
                字符数integer
    returns        varchar|nvarchar
    */
    SELECT LEFT('abcdefg',1)--a
    SELECT LEFT('abcdefg',2)--ab
    SELECT LEFT('abcdefg',3)--abc
    SELECT LEFT('abcdefg',1000)--abcdefg
    --SELECT LEFT('abcdefg',-2)--传递到 left 函数的长度参数无效。
    SELECT LEFT('abcdefg',0)--''
     
     
     
    /* 
    6,LEN返回给定字符串表达的字符数
    parameter    表达式varchar|nvarchar
    returns        integer|bigint
    */
    SELECT LEN('abcdefg')--7
    SELECT LEN(N'abcdefg')--7
    SELECT LEN('')--0
    SELECT LEN('中国人')--3
     
     
     
    /*
    7,LOWER返回将大写字符转换为小字符的字符表达式
    parameter    表达式varchar|nvarchar
    returns        varchar|nvarchar
    */
    SELECT LOWER('ABCDEFG')--abcdefg
    SELECT LOWER('中国人')--中国人
     
     
     
    /*
    8,LTRIM返回删除了前导空格之后字符表达式
    parameter    表达式varchar|nvarchar
    returns        varchar|nvarchar
    */
    SELECT LTRIM('   abcdefg')--abcdefg
     
    /* 
    9,NCHAR返回具有给定的整数代码的UNICODE字符
    parameter    integer
    returns        nchar(1)
    */
    SELECT NCHAR(65)--A
    SELECT NCHAR(-65)--NULL
    SELECT NCHAR(-66)--NULL
     
     
     
    /*
    10,PATINDEX返回指定表达式中模式第一次出现的开始位置
    parameter    搜索模式文字varchar|nvarchar
                要搜索的表达式varchar|nvarchar
    returns        integer|bigint    
    */
    SELECT PATINDEX('%_cd%','abcdefg')--2
     
     
     
    /*
    11,QUOTENAME返回为成为有效的SQL SERVER分隔标识符而添加了分隔符的UNICODE字符串
    parameter    表达式nvarchar(128)
                (可选)引号字符char(1)
    returns        nvarchar(258)
    */
    SELECT QUOTENAME('CREATE TABLE')--[CREATE TABLE]
    SELECT QUOTENAME('a')--[a]
     
     
     
    /*
    12,REPLACE用第三个表达式替换第一个表达式中出现的第二个表达式
    parameter    要搜索的表达式varchar|nvarchar
                搜索表达式varchar|nvarchar
                替换表达式varchar|nvarchar
    returns        varchar|nvarchar
    */
    SELECT REPLACE('abcdefg','cd','0')--ab0efg
    SELECT REPLACE('abcdefg','cd','')--abefg
     
     
     
    /* 
    13,REPLICATE按指定次数重复表达式 
    parameter    表达式varchar|nvarchar
                表达式bigint
    returns        varchar|nvarchar
    */
    SELECT REPLICATE('a',4)--aaaa
    SELECT REPLICATE('abc|',4)--abc|abc|abc|abc|
     
     
     
    /* 
    14,REVERSE返回字符表达式的逆向表达式
    parameter    表达式varchar|nvarchar
    returns        varchar|nvarchar
    */
    SELECT REVERSE('ABC')--CBA
    SELECT REVERSE('ABa')--aBA
     
     
     
    /* 
    15,RIGHT返回字符表达式右侧指定数目的字符
    parameter    表达式varchar|nvarchar
                表达式bigint
    returns        varchar|nvarchar
    !类似LEFT函数
    */
    SELECT RIGHT('abcd',3)--bcd
     
     
     
    /*
    16,RTRIM返回截断了所有尾随空格之后的字符表达式
    parameter    表达式varchar|nvarchar
    returns        varchar|nvarchar
    */
    SELECT RTRIM('ABCD    ')--ABCD
     
    /*
    17,SOUNDEX返回由四个字符表达的SOUNDEX代码
    parameter    表达式varchar
    returns        varchar
    !参考DIFFERENCE函数
    */
    SELECT SOUNDEX('ABCD')--A120
    SELECT SOUNDEX('hello')--A120
     
     
     
    /*
    18,SPACE返回由重复空格组成的字符串 
    parameter    表达式integer
    returns        char
    */
    SELECT SPACE(10)--[          ]
    SELECT LEN(SPACE(10))--0
     
     
     
    /*
    19,STR返回从默认表达转换而来的字符串
    parameter    表达式float
                (可选)长度integer,default
                (可选)小数位数integer,default
    returns        char
    */
    SELECT STR(100)--[       100]
    SELECT STR(100,10,2)--[    100.00]
    SELECT STR(100.66666,10,2)--[    100.67]
    SELECT LTRIM(STR(100.66666,10,2))--[100.67]
    SELECT STR(100.66666,10)--[       101]
     
     
     
    /* 
    20,STUFF删除指定长度的字符,并在指定的起点处插入另一组字符
    parameter    要搜索的表达式varchar|nvarchar|varbinary
                开始位置bigint
                字符数bigint
                替换表达式varchar|nvarchar|varbinary
    returns        varchar|nvarchar|varbinary
    */
    SELECT STUFF('abcd',1,4,'1')--1
    SELECT STUFF('abcd',2,4,'1')--a1
    SELECT STUFF('abcd',2,3,'1')--a1
    SELECT STUFF('abcd',3,4,'1')--ab1
    SELECT STUFF('abcd',4,4,'1')--abc1
    SELECT STUFF('abcd',5,4,'1')--NULL
     
    SELECT STUFF('abcd',1,1,'1')--1bcd
    SELECT STUFF('abcd',1,2,'1')--1cd
    SELECT STUFF('abcd',1,3,'1')--1d
    SELECT STUFF('abcd',1,4,'1')--1
    SELECT STUFF('abcd',1,5,'1')--1
    SELECT STUFF('abcd',1,500,'1')--1
     
    SELECT STUFF('abcdefg',2,4,'xxx')--axxxfg
     
    /* 
    21,SUBSTRING返回字符表达式,二进制,文本表达式或图像表达的一部分
    parameter    表达式varchar|nvarchar|text|ntext|varbinary|image
                开始位置bigint
                长度bigint
    returns        varchar|nvarchar|text|ntext|varbinary|image
    */
    SELECT SUBSTRING('abcd',1,1)--a
    SELECT SUBSTRING('abcd',2,1)--b
    SELECT SUBSTRING('abcd',3,1)--c
    SELECT SUBSTRING('abcd',4,1)--d
     
    SELECT SUBSTRING('abcd',1,1)--a
    SELECT SUBSTRING('abcd',1,2)--ab
    SELECT SUBSTRING('abcd',1,3)--abc
    SELECT SUBSTRING('abcd',1,4)--abcd
     
    SELECT SUBSTRING('abcdefg',2,3)--bcd
     
    /* 
    22,UNICODE返回表达第一个字符的UNICODE整数值
    parameter    表达式nvarchar
    returns        integer
    !仅返回首字符
    */
    SELECT UNICODE('a')--97
    SELECT UNICODE('中国人')--20013
    SELECT UNICODE('中国')--20013
    SELECT UNICODE('中')--20013
     
    /* 
    23,UPPER返回将小写字符转换为大写字符的字符表达式
    parameter    表达式varchar|nvarchar
    returns        varchar|nvarchar
    */
    SELECT UPPER('a')--'A'

    猜测您可能对下边的文章感兴趣

    SQL SERVER 2008 函数大全 - 字符串函数

    SQL2008系统统计函数

    [MSSQL]GROUPING SETS,ROLLUP,CUBE初体验

    [MSSQL]ROW_NUMBER函数

    [MSQL]RANK函数

    [MSSQL]NTILE另类分页有么有?!

    [MSQL]也说SQL中显示星期几函数

    [MSSQL]COALESCE与ISNULL函数

    [MSSQL]PIVOT函数

    [MSSQL]FOR XML AUTO I

    [MSSQL]FOR XML AUTO II

    [MSSQL]TRY…CATCH…通用格式

    如果您喜欢该博客请点击右下角推荐按钮,您的推荐是作者创作的动力!

     
  • 相关阅读:
    初步学习next.js-1-新建项目
    对象比较-深层,浅层
    制作右键菜单
    使用高德API-初级应用
    启动前后端连载方法
    使用websocket
    关于图片压缩
    归并排序(mergesort)
    冒泡排序
    递归介绍
  • 原文地址:https://www.cnblogs.com/kkun/p/2125409.html
Copyright © 2011-2022 走看看