我的时间组间隔有问题。
我希望小组在90秒内完成:
datediff(second, '1990-1-1', date_creation)/90
但是有了这个:
2015-02-23 08:34:30.033
2015-02-23 08:34:30.017
2015-02-23 08:34:30.000
2015-02-23 08:34:29.987
我有这个:
8816983.0
8816983.0
8816983.0
8816982.9888888896
小组不工作:(
如何让它发挥作用?
谢谢:)
编辑1: 有楼层: 8816983 8816983 8816983 8816982
我的整个查询是:
select intcol4.codtou [CodeTour], min(b.id) MinID, max(b.id) MaxID
from intcolbgia b
inner join
(select id, codtou
from intcol004
union
select id, datyen
from intcol004vs
union
select id, datyen
from intcol004va
union
select id, datyen
from intcol004cdt
union
select id, datyen
from intcol004cde) intcol4 on intcol4.id = b.id
group by intcol4.codtou, datediff(second, '1990-1-1', date_creation) /90) tournees
答案 0 :(得分:2)
如上所述,您的代码应该可以工作,因为SQL Server会进行整数除法。但是,您可以明确并使用floor()
:
group by floor(datediff(second, '1990-01-01', date_creation)/90)
您描述的行为表明您使用的是十进制值(某种类型)为“90”而不是整数。