main
当我把SET @secret= - (convert(float,getdate()) - convert(int,getdate()) ) * 1000000 ;
放在之前(转换,它在上午12点之后工作,但当我删除'-'
它在12 AM之前工作。这很奇怪。我该怎么做才能防止这个?
答案 0 :(得分:0)
您似乎想要这个计算:
select -1000000 * datediff(second, 0, cast(getdate() as time)) / (24*60*60.0)
我建议您使用此方法而不是更神秘的方法将一天的分数转换为大数。
或者,如果您更喜欢更精确:
select -1000000 * datediff(millisecond, 0, cast(getdate() as time)) / (24*60*60*1000.0)