我想要一小时数据里进行筛选,为什么数据库没执行

 WHERE dt>DateAdd(MINUTE,-1,DateAdd(SECOND,-DATEPART(SECOND,@ct),DateAdd(MINUTE,-DATEPART(MINUTE,@ct),@ct)))
        AND dt<DateAdd(HOUR,1,DateAdd(SECOND,-DATEPART(SECOND,@ct),DateAdd(MINUTE,-DATEPART(MINUTE,@ct),@ct)))

上面的sql应该是sqlserver的tsql,而不是mysql

如果不清楚条件是否正确,可以像这样测试:

DECLARE @ct DATETIME;
SET @ct='2020-06-02 11:52:35';
SELECT DateAdd(MINUTE,-1,DateAdd(SECOND,-DATEPART(SECOND,@ct),DateAdd(MINUTE,-DATEPART(MINUTE,@ct),@ct)))
SELECT DateAdd(HOUR,1,DateAdd(SECOND,-DATEPART(SECOND,@ct),DateAdd(MINUTE,-DATEPART(MINUTE,@ct),@ct)))

输出结果

2020-06-02 10:59:00.000
2020-06-02 12:00:00.000

你的条件是筛选临近当前时间整点的前一个小时的,但是貌似多了一秒