我有一个表只有超过200,000个条目,其中日期存储为CYYMMDD,其中C是世纪(当前存储为整数)。例如,1992年12月5日将显示为1921205
,2016年4月25日将显示为2160425
。我需要以YYYMMDD格式在新表中显示这些结果。因此,对于之前的两个示例,它将是19921205
和20160425
。我尝试过使用
CONVERT(VARCHAR(8),[DATE], 112)
这不会给出错误但它也没有进行转换,所以我的所有日期看起来都是一样的。我做错了什么?
答案 0 :(得分:1)
您需要按如下方式拆分数值:
DATEFROMPARTS( 1800 + FLOOR([DATE]/10000) , FLOOR([DATE]/100)%100, [DATE]%100 )