接收日期为5月19日,并且需要在MS SQL中将其转换为'05 / 01/2019',即6月19日为'06 / 01/2019'。
我尝试了各种日期转换,但没有用。请帮帮我。
你可以试试看 以这种格式存储日期不是一个好习惯/建议,您应该使用适当的数据类型,并且该数据类型适用于此数据类型。
您应该使用正确的日期时间值更新值,然后再更改数据类型。这样可以节省您的时间,并且您不需要每次都进行这些转换。
Select Try_Cast('19-May 2019' as Datetime)
要么
Select Try_Cast('19-May' + '2019' as Datetime)
要获取月份的第一个日期,您可以尝试以下查询。
SELECT DATEADD(month, DATEDIFF(month, 0, Try_Cast('19-May 2019' as Datetime)), 0) AS StartOfMonth
编辑
要根据给定的字符串数据获取月份的第一个日期,可以使用以下查询。
declare @dateinStr varchar(20) = '19-May'
Select try_cast('01-' + Replace(@dateinStr, LEFT(@dateinStr, 3), '') + LEFT(@dateinStr, 2) as Datetime) as Date
这是演示。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。