1.CONCAT函数

SELECT custid, country, region, city,
  country + N',' + region + N',' + city AS location
FROM Sales.Customers;

对有NULL 数据行加减也为NULL

怎么解决呢 这里就用到了 CONCAT 函数

SELECT custid, country, region, city,
  country + COALESCE( N',' + region, N'') + N',' + city AS location
FROM Sales.Customers;

CONCAT('A',NULL,'B') 接收一个连接字符串输入并主动替换null 为‘’字符串 结果就是 AB

2.SUBSTRING函数

它可以从字符串提取一个子字符串

和c# 截取字符串用法一样 不过下标不是零开始

, ); -- 'abc'

如果第三个参数超过字符长度也没事 它会默认去整个字符串长度

3.LEFT和RIGHT函数

其实SUBSTRING 函数简化版

); -- 'cde'

SELECT LEFT(N'abcde',3); -- 'abc'

4.LEN和DATALENGTH函数


LEN 返回字符数  DATALENGTH 返回字节数   LEN会删除尾随空格 但 DATALENGTH  不会

5.CHARINDEX 函数


返回空格在 后面字符串第一次出现位置

6.PATINDEX 函数

模糊查询条件 在字符串中出现的位置


找寻 数字在后面字符串第一次出现的位置

7.REPLACE函数

SELECT REPLACE('1-a 2-b', '-', ':'); -- '1:a 2:b'

替换函数 也可以用来计算字符串中字符出现的次数

SELECT empid, lastname,
  LEN(lastname) - LEN(REPLACE(lastname, 'e', '')) AS numoccur
FROM HR.Employees;

获取字符串中E出现的次数  当前长度减替换后的长度

8.REPLICATE函数

); -- 'abcabcabc'

复制字符串  通常可用它来生成订单号 例如

SELECT supplierid,
  ) )),
        ) AS strsupplierid
FROM Production.Suppliers;

复制9个0 对id类型统一后从右取10个字符   可以根据需求定制类型

9.STUFF 函数

允许从字符串中移除指定数量字符串 并插入新子字符串

, , 'abc'); -- 'xabcz'

第一个参数 字符串 第二个参数 开始移除位置    第三个参数 移除几个字符   第三个参数 移除的字符要替换成什么字符

10.UPPER和LOWER 函数

SELECT UPPER('Itzik Ben-Gan'); -- 'ITZIK BEN-GAN'

SELECT LOWER('Itzik Ben-Gan'); -- 'itzik ben-gan'

大小写互转

11.RTRIM和LTRIM 函数

SELECT RTRIM(LTRIM('   abc   ')); -- 'abc'

它们分别是删除 前空格 和后空格

12.FORMAT 函数

类似于字符串格式拼接

, 'd10'); -- '0000001759'
, '); -- '0000001759'

自定义格式化字符串输入 可以有多种选择  官方参考链接 https://go.microsoft.com/fwlink/?LinkId=211776

13.LIKE 谓词函数

SELECT empid, lastname
FROM HR.Employees
WHERE lastname LIKE N'D%';

返回开头是D的用户

SELECT empid, lastname
FROM HR.Employees
WHERE lastname LIKE N'_e%';

返回开头第二个是e的用户

SELECT empid, lastname
FROM HR.Employees
WHERE lastname LIKE N'[ABC]%';

返回开头是A或B或C 的用户

SELECT empid, lastname
FROM HR.Employees
WHERE lastname LIKE N'[A-E]%';

返回开头是A到E 的用户

SELECT empid, lastname
FROM HR.Employees
WHERE lastname LIKE N'[^A-E]%';

返回不是A到E开头的用户  如果通配符用特殊需要转译 的用 [ ] 包起来 %[%]%

T-SQL:函数大全(九)的更多相关文章

  1. sql函数大全

    sql函数大全 一.内部函数 1.内部合计函数 1)COUNT(*) 返回行数 2)COUNT(DISTINCT COLNAME) 返回指定列中唯一值的个数 3)SUM(COLNAME/EXPRESS ...

  2. SQL函数大全(字符串函数).

    SQL Server 2005  函数大全 字符串函数 字符串函数 SubString在SQL和C#中不同, 一,select  substring('abcde',-1,3) select LEN( ...

  3. Oracle 内置sql函数大全

    F.1字符函数--返回字符值 这些函数全都接收的是字符族类型的参数(CHR除外)并且返回字符值.除了特别说明的之外,这些函数大部分返回VARCHAR2类型的数值.字符函数的返回类型所受的限制和基本数据 ...

  4. 常用SQL函数大全

    数学函数 mod(x,y) 返回x/y的模(余数)mod(5,3)=2,mod(3,5)=3 floor(x)   返回小于x的最大整数值ceiling(3)=3,ceiling(3.1)=3 cei ...

  5. Sql 函数大全 (更新中...由难到简

    1.字符处理类: 1.1 指定指定字符输出的次数 ) 结果:1a1a1a1a1a (5个1a)

  6. SQL SERVER 2008函数大全(含例子)

    --SQL SERVER 2008 函数大全 /* author:TracyLee csdncount:Travylee */ /* 一.字符串函数: 1.ascii(字符串表达式)    返回字符串 ...

  7. SQL SERVER 函数大全[转]

    SQL Server 函数大全 一旦成功地从表中检索出数据,就需要进一步操纵这些数据,以获得有用或有意义的结果.这些要求包括:执行计算与数学运算.转换数据.解析数值.组合值和聚合一个范围内的值等. 下 ...

  8. 【转载】SQL SERVER 函数大全

    SQL Server 函数大全 一旦成功地从表中检索出数据,就需要进一步操纵这些数据,以获得有用或有意义的结果.这些要求包括:执行计算与数学运算.转换数据.解析数值.组合值和聚合一个范围内的值等. 下 ...

  9. SQL函数说明大全

    一旦成功地从表中检索出数据,就需要进一步操纵这些数据,以获得有用或有意义的结果.这些要求包括:执行计算与数学运算.转换数据.解析数值.组合值和聚合一个范围内的值等. 下表给出了T-SQL函数的类别和描 ...

  10. [转]SQL Server字符串处理函数大全

    select语句中只能使用sql函数对字段进行操作(链接sql server), select 字段1 from 表1 where 字段1.IndexOf("云")=1;这条语句不 ...

随机推荐

  1. 2019.03.04 bzoj5308: [Zjoi2018]胖(二分答案+st表)

    传送门 想题5分钟调题两小时系列 其实还是我tcl 读完题之后自然会知道一个关键点能够更新的点是一段连续的区间,于是我们对于每个点能到的左右区间二分答案,用ststst表维护一下查询即可. 代码: # ...

  2. ABP框架系列之二十七:(Feature-Management-特征管理)

    Introduction Most SaaS (multi-tenant) applications have editions (packages) those have different fea ...

  3. 12. The Biggest Safety Threat Facing Airlines 航空公司面临的最大安全威胁

    12. The Biggest Safety Threat Facing Airlines 航空公司面临的最大安全威胁 (1) The biggest safety threat facing air ...

  4. ASM的一些小坑

    变量必需放到数据段,才有直接对地址赋值的访问权限 segment .data n1 dw 55h segment .text global _nasm_function _nasm_function: ...

  5. PostgreSQL和MySQL

    PostgreSQL分布式

  6. Log4Cpp的使用(转)

    本文介绍如何使用Log4CPP. Log4Cpp介绍 Log4Cpp的Api接口可以在http://log4cpp.sourceforge.net/api/index.html中查询得到. Log4C ...

  7. .NET Core微服务之路:让我们对上一个Demo通讯进行修改,完成RPC通讯

    最近一段时间有些事情耽搁了更新,抱歉各位了. 上一篇我们简单的介绍了DotNetty通信框架,并简单的介绍了基于DotNetty实现了回路(Echo)通信过程. 我们来回忆一下上一个项目的整个流程: ...

  8. vmware平台下两次网络不通的诡异事件

      首先表明以下两种情况确实很少见,也可以说确实非常奇怪,无法定位原因由于机缘巧合确实出现了,虽然本文没有找到根因,但是希望能帮遇到类似问题的同学一点思绪. RouteOS内网网卡不可用   首先强调 ...

  9. C++中const关键字 理解

    const:符号常量  使用符号常量写出的代码更容易维护:指针是边读边移动,而不是边写边移动,许多函数参数是只读不写的. const最常见用途是作为数组的界和switch分情况标号(也可以用枚举符代替 ...

  10. 首页背景图片在PC端有显示,在手机端不显示的解决方法

    今天看博客的资源大小,发现背景图片有44k大的吓人,准备压缩一下. 压缩之后才发现,我的背景图片在手机端是没有显示的.原因是背景图片不支持缩放. 上网查了下,发现加入如下代码之后就支持缩放了: bac ...