美文网首页BI学习笔记
BI-SQL丨截取字符串

BI-SQL丨截取字符串

作者: Fabric丨白茶 | 来源:发表于2022-05-20 21:01 被阅读0次

截取字符串

我们在做BI可视化之前,通常需要已经清洗干净的数据才能进行可视化分析。

随着电商的发展,有很多数据都是从网上渠道抓取过来的,这就导致原始数据有很多对于分析来说的无效数据,那么在SQL中这部分数据该如何进行处理呢?

函数介绍

SUBSTRING语法:

SUBSTRING ( 表达式 , 开始位置 , 长度 )

返回结果为:返回字符、binary、text 或 image 表达式的一部分。

CHARINDEX语法:

CHARINDEX ( 目标字符串 , 被查找字符串 [ , 开始查找位置 ] )

若省略第三参数,则默认从第一位开始查找。

返回结果:字符串开始出现的位置。

PATINDEX语法:

PATINDEX ( '%字符串%' , 表达式)

第一参数可以使用通配符,第二参数通常为被查找的字符串。

返回结果:字符串开始出现的位置。

注:

CHARINDEX函数与PATINDEX函数从结果上来看,二者的作用类似,不过前者是完全匹配,后者支持模糊查询。

使用实例

案例数据:

在白茶本机的数据库中存在名为“CaseData”的数据库。

存在名为“案例数据”的表。从上图中我们可以看出,数据量比较少,而且在[商品名称]这一列中存在很多的无用字符。

例子1:

提取手机的所有信息,并将[商品名称]中无用的字符串去掉。

代码1:

SELECT SUBSTRING([商品名称],CHARINDEX('手机',[商品名称]),2) AS Product,* 
FROM [案例数据]
WHERE [商品名称] LIKE N'%手机%'

结果如下:

解释:

这段代码中,我们首先通过CHARINDEX函数定位到手机出现的字符串位置,再通过SUBSTRING函数进行字符串截取。

代码2:

SELECT SUBSTRING([商品名称],PATINDEX('%手机%',[商品名称]),2) AS Product,* 
FROM [案例数据]
WHERE [商品名称] LIKE N'%手机%'

结果如下:

例子2:

提取[商品名称]中所有商品,并将[商品名称]中无用的字符串去掉。

代码:

SELECT SUBSTRING([商品名称],
                 CHARINDEX('[',[商品名称])+1,CHARINDEX(']',[商品名称])-CHARINDEX('[',[商品名称])-1
         )AS Product,* 
FROM [案例数据]

结果如下:

解释:

这段代码中,我们先判断的是“[”符号首次出现的位置,来定位所有商品名称的首字符位置,再通过判断“]”的位置来确认商品名称的末字符位置,二者相减即为需要截取的字符串长度。

这里是白茶,一个PowerBI的初学者。


相关文章

  • BI-SQL丨截取字符串

    截取字符串 我们在做BI可视化之前,通常需要已经清洗干净的数据才能进行可视化分析。 随着电商的发展,有很多数据都是...

  • mac 终端常见命令

    切换shell 截取字符串 shell字符串的截取 shell字符串的截取 Shell脚本8种字符串截取方法总...

  • swift-字符串截取 截取指定字符前面或后面的字符串

    截取‘:’前面所有的字符串 截取‘:’前面所有的字符串(结果包含‘:’) 截取':'后面的所有字符串 截取':'后...

  • iOS 字符串常见处理

    一、截取字符串 iOS “字符串” 的几种常见的截取方法(随时更新)iOS截取字符串,分割字符串iOS 截取字符串...

  • OC - NSString

    1.字符串的截取 字符串的截取用: 字符串 +substring..如果开始就截取用from, 如果截取到用to。...

  • OC 字符串的截取

    1、字符串截取 2、从指定位置开始截取n个长度 3、分隔字符串 4、字符串的截取替换 5、替换掉截取某部分的字符串...

  • Swift字符串截取

    NSString类型的字符串截取 NSString类型的字符串截取方法,同于OC语言的字符串截取方法,不能修改字符...

  • MySQL字符串截取的4个函数

    mysql字符串截取的4个函数 tags:mysql 字符串截取 1、从左开始截取字符串 left(str, le...

  • shell截取字符串

    获取字符串长度 最小限度从前面截取字符串 最大限度从前面截取字符串 最小限度从后面截取字符串 最大限度从后面截取字...

  • sql常用函数

    SUBSTRING():截取字符串参数1:字符串参数2:截取开始位置参数3:截取字符串的长度 LEFT():返回指...

网友评论

    本文标题:BI-SQL丨截取字符串

    本文链接:https://www.haomeiwen.com/subject/kabuhrtx.html