使用SQL语句对不规则的日期进行截取拼接
网友使用百度AI进行运动打款识别,发送跑步截图到QQ或者微信,后台进行AI识别,填充至数据库
在使用过程中发现,百度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
返回给定字符串表达式的字符(而不是字节)个数,其中不包含尾随空格。