Sql server 2008 在sql server中将字符串转换为日期格式105
我有一个ddmmyy顺序的字符串,即'231013',我需要将其转换为dd-mm-yy格式 我尝试了以下内容,但它提供了yyyy dd mm格式 我知道105将给出dd-mm-yy格式Sql server 2008 在sql server中将字符串转换为日期格式105,sql-server-2008,date,date-conversion,Sql Server 2008,Date,Date Conversion,我有一个ddmmyy顺序的字符串,即'231013',我需要将其转换为dd-mm-yy格式 我尝试了以下内容,但它提供了yyyy dd mm格式 我知道105将给出dd-mm-yy格式 DECLARE @ITEMS AS NVARCHAR(10)='231013' SELECT CONVERT(DATE,@ITEMS,105) 但它正在回归 2023-10-13 如何将字符串按ddmmyy的顺序转换为日期ddmmyy似乎mmddyy样式是通过转换的;要执行转换,我只需将输入
DECLARE @ITEMS AS NVARCHAR(10)='231013'
SELECT CONVERT(DATE,@ITEMS,105)
但它正在回归
2023-10-13
如何将字符串按ddmmyy的顺序转换为日期ddmmyy似乎
mmddyy
样式是通过转换的;要执行转换,我只需将输入字符串调整为支持的样式之一,如mm-dd-yy
:
SELECT
CONVERT(DATE, SUBSTRING(@ITEMS, 1, 2) + '-' + SUBSTRING(@ITEMS, 3, 2) + '-' +
SUBSTRING(@ITEMS, 5, 2), 5)
如果您只需要更改格式(不转换为日期时间类型),可以
Stuff()
it:
Declare @Items as nvarchar(10)='231013' --ddmmyy
Select Stuff(Stuff(@Items,3,0,'-'),6,0,'-') --dd-mm-yy
按ddmmyy到dd mm yy的顺序转换字符串
DECLARE @ITEMS AS NVARCHAR(10)='231013'
SELECT CONVERT(varchar(25),
CONVERT(DATE, SUBSTRING(@ITEMS, 1, 2) + '-' + SUBSTRING(@ITEMS, 3, 2) + '-' + SUBSTRING(@ITEMS, 5, 2), 5),5)
结果将是
您是否正在尝试将字符串转换为日期数据类型?或者您正在尝试将字符串转换为其他格式的字符串?当您将某个字符串转换为日期时,它不再具有格式-它是正确编码日期值的本机类型。然后,您看到的是客户端工具在被要求显示
日期
时所做的工作-它们必须将其转换为字符串-您看到的是工具始终将日期
值转换为字符串的方式。您不能更改他们正在使用的格式。