伊恩(Ian)的回答很好,但其中包含不必要的转换。我建议
SELECt ConVERT(smalldatetime, ROUND(CAST([columnname] AS float) * 48.0,0,1)/48.0) FROM [tableName]
如果您想四舍五入到最近的半小时而不是总是四舍五入,请使用
SELECt ConVERT(smalldatetime, ROUND(CAST([columnname] AS float) * 48.0,0)/48.0) FROM [tableName]



