【问题标题】:SQL concatenate - reorder a date from European to US formatSQL 连接 - 将日期从欧洲格式重新排序为美国格式
【发布时间】:2023-03-26 00:05:01
【问题描述】:

这里是 SQL 新手。我正在尝试将日期从欧洲格式重新排序为美国格式,但遇到了麻烦。我得到的是 AS 字段名称,而不是我需要的日期结果。代码和结果如下:

Select LEFT([Value_date],2) AS DayParse, 
    Substring ([Value_date],4,3) AS MonthParse, 
    Right([Value_date],5) AS YearParse, 
    'MonthParse' + 'DayParse' + 'YearParse' As Value_Date_Reorder 
From [RAW].[dbo].[RAW_DERIVATIVES]


DayParse    MonthParse  YearParse   Value_Date_Reorder      
30          06/         /2017       MonthParseDayParseYearParse

【问题讨论】:

  • 将日期存储为日期/时间值并使用convert() 将它们转换为使用适当格式的字符串。

标签: sql sql-server concatenation


【解决方案1】:

假设 Value_date 是 DATETIME 类型,我建议使用以下查询。 您必须连接原始数据。

SELECT CONVERT(VARCHAR, DATEPART(MONTH, Value_date)) + '/' 
+ CONVERT(VARCHAR, DATEPART(DAY, Value_date)) 
+ '/' + CONVERT(VARCHAR, DATEPART (YEAR, Value_date)) AS Value_Date_Reorder
FROM [RAW].[dbo].[RAW_DERIVATIVES]
ORDER BY 1

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-05
    相关资源
    最近更新 更多