MSSQL字符串转换为年月的简单技巧(mssql字符串转换年月)
MSSQL字符串转换为年月的简单技巧
在分析数据的过程中,往往会有一些实践性的字符串转换需求,其中最常见的就是需要将yyyy-mm的日期格式的字符串转换成按照yyyy-mm格式的日期格式。根据实际需求通常有两种解决方案。
方法1:
使用SUBSTRING函数从字符串中分割出所需年份月份信息。然后利用CONVERT函数将所得数据转换成指定格式日期。
例如:
将字符串2018-06-23转换为yyyy-mm格式的日期:
SELECT CONVERT(DATE,SUBSTRING(‘2018-06-23’,1,7)) AS DateString
输出结果:2018-06-01
方法2:
使用CONVERT函数将字符串转换成日期类型,指定12月份为1月份,然后使用DATEADD函数将当前月份减一,最后再按照指定的格式转换成字符串类型。
例如:
将字符串2018-06-23转换为yyyy-mm格式的日期:
SELECT CONVERT(VARCHAR(7),DATEADD(MONTH,-1,CONVERT(DATE,’2018-06-23′)),120) AS DateString
输出结果:2018-05-01
以上两种方法都可以用于将字符串转换成按照yyyy-mm格式的日期类型,而且用起来比较简单,最后推荐使用第一种方法,因为这种方法的效率更高一些。