在SQL Server 2016中,在一个表中,我想将日期列更改为:
Public Sub test()
Dim ACHRowCount As Long
With ActiveSheet '<= change to actual sheet name
ACHRowCount = .Range("Q" & .Rows.Count).End(xlUp).Row
.Cells(ACHRowCount, 18).Offset(2, 0).Formula = "=SUMIF(S3:S" & ACHRowCount & ", ""<0"",T1:T3)"
End With
End Sub
对于下面的一个,只改变数月和日到05-20,只保留年份!
1936-12-15
1928-11-04
1940-09-18
1933-04-26
1942-08-17
我尝试了以下内容:
1936-05-20
1928-05-20
1940-05-20
1933-05-20
1942-05-20
但它增加了所有日期的5个月!
请帮忙。谢谢。
答案 0 :(得分:4)
您似乎在使用SQL Server:
UPDATE [column]
SET [column] = datefromparts(year(column), 5, 20);
在早期版本的SQL Server中,您可以执行以下操作:
UPDATE [column]
SET [column] = datename(year, column) + '0520'
这会自动将字符串转换为正确的日期(尽管您也可以添加明确的cast()
/ convert()
)。
答案 1 :(得分:1)
答案 2 :(得分:1)
UPDATE [Table]
SET [column] = FORMAT([column],'yyyy-05-20')