VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > 数据库 > SQL教程 >
  • 常用SQL函数太简单?那是你没用过这些高级函数(不看后悔系列)(2)

当输入字符串包含两个或多个连续出现的分隔符字符时,将出现长度为零的空子字符串。 空子字符串的处理方式与普通子字符串相同。 可以通过使用 WHERE 子句筛选出包含空的子字符串的任何行 (WHERE value <> '')。 如果输入字符串为 NULL,则 STRING_SPLIT 表值函数返回一个空表。

 

示例一

SELECT Value FROM STRING_SPLIT('SQL-数据库-开发', '-');

结果

 

示例二

WITH t AS (
 SELECT 1 ID,'张三' Name,'足球,篮球,羽毛球' Hobby
 UNION ALL
 SELECT 2 ,'李四','足球,游泳,爬山'
 )


SELECT ID, Name, Value
FROM t
CROSS APPLY STRING_SPLIT(Hobby, ',');

结果

 

注意:返回的列不再是Hobby,而是Value,必须写成Value,否则得不到想要的结果。这个与STRING_AGG()函数的功能相反。

 

 

 

STUFF

作用

STUFF 函数将字符串插入到另一个字符串中。 它从第一个字符串的开始位置删除指定长度的字符;然后将第二个字符串插入到第一个字符串的开始位置。

 

语法

STUFF ( character_expression , start , length , replaceWith_expression )

 

注意:

  • 如果开始位置或长度值是负数,或者开始位置大于第一个字符串的长度,则返回 Null 字符串。 如果开始位置为 0,则返回 Null 值。如果要删除的长度大于第一个字符串的长度,则删除到第一个字符串中的第一个字符。
  • 如果结果值大于返回类型支持的最大值,则会引发错误。

 

示例

SELECT STUFF('abcdef', 2, 3, 'ijklmn');

结果

 

 

以上就是今天要给大家介绍的高级字符函数,下次我们再给大家介绍高级日期函数的相关用法。

 

码字不易,觉得不错,记得点赞收藏哦,谢谢啦~


相关教程