使用SQL语句对不规则的日期进行截取拼接

作者: 平淡人生 分类: SQL 发布时间: 2019-08-08 15:34

网友使用百度AI进行运动打款识别,发送跑步截图到QQ或者微信,后台进行AI识别,填充至数据库

 

1XS8[TFXY]PG%Z8H~FT]`]2

在使用过程中发现,百度AI识别出来的日期,不一致,比如8月7日,和12月5日,8月15日等,不能直接写入数据库日期类型字段库

,因此需要对日期进行转换

SELECT ‘2019’+’-‘+LEFT(‘8月7日’,CHARINDEX(‘月’,’8月7日’)-1)+’-‘+RIGHT(LEFT(‘8月7日’,CHARINDEX(‘日’,’8月7日’)-1),len(‘8月7日’)-CHARINDEX(‘月’,’8月7日’)-1)

 

返回结果:2019-8-7

使用函数说明:

CHARINDEX ( expressionToFind , expressionToSearch [ , start_location ] )

expressionToFind :目标字符串,就是想要找到的字符串,最大长度为8000 。

expressionToSearch :用于被查找的字符串。

start_location:开始查找的位置,为空时默认从第一位开始查找。

-1、LEFT()方法---
--函数说明---
--1)语法:LEFT(character,integer)  
--2)介绍:参数1:要截取的字符串,参数2:截取字符个数
--3)使用:
--返回从字符串左边开始指定个数的字符--
select LEFT('SqlServer_2008',3)
--4)返回:Sql

--1、RIGHT()方法---
-- right()函数说明---
--1)语法:RIGHT(character,integer)  
--2)介绍:参数1:要截取的字符串,参数2:截取字符个数
--3)使用:
--返回从字符串右边开始指定个数的字符--
select LEFT('SqlServer_2008',4)
--4)返回:2008

LEN

返回给定字符串表达式的字符(而不是字节)个数,其中不包含尾随空格。

 

 

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!