Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typo3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 按时间间隔分组数据_Sql_Tsql - Fatal编程技术网

Sql 按时间间隔分组数据

Sql 按时间间隔分组数据,sql,tsql,Sql,Tsql,我需要在sql中每隔15(或X)分钟对数据进行分组 例如,我有下一个场景 我期望得到的结果是 我尝试使用Lag函数,但我没有得到我想要的,因为它为每一行添加了间隔,并继续分组 提前感谢您,并为我的英语不好表示歉意。如果您希望时间间隔以日历为基础,即从0、15、30和45分钟开始,每小时四次,那么您可以使用: select id, min(begin_date), max(begin_date) from t group by id, convert(date, begin_date),

我需要在sql中每隔15(或X)分钟对数据进行分组

例如,我有下一个场景

我期望得到的结果是

我尝试使用Lag函数,但我没有得到我想要的,因为它为每一行添加了间隔,并继续分组


提前感谢您,并为我的英语不好表示歉意。

如果您希望时间间隔以日历为基础,即从0、15、30和45分钟开始,每小时四次,那么您可以使用:

select id, min(begin_date), max(begin_date)
from t
group by id, convert(date, begin_date),
         datepart(hour, begin_date), datepart(minute, begin_date) / 15;

请注意,“开始日期”和“结束日期”的值相同,因此我在这个答案中只使用了
begin\u date

否,我需要将符合该间隔的行分组。保留原始开始日期和结束日期请定义间隔的含义。这个问题不清楚。