gpt4 book ai didi

Mysql:查找时间戳差异小于x的行

转载 作者:行者123 更新时间:2023-11-29 05:28:16 24 4
gpt4 key购买 nike

我的表结构如下:

Field       Type
id int(11) AI
user varchar(64)
date timestamp
key int(11)

我需要做的是找到行(从给定的一天开始),其中两个连续行之间的差异(最接近的时间戳(对于给定用户)小于 1300。

有人告诉我,使用这样的查询:

select t.*
from (select t.*, @nextdate as nextdate, @nextdate := date
from my_table t
order by date desc
) t
where t.nextdate - t.date < 1300;

但是好像没有用。谁能帮我解决我的任务?

最佳答案

试试这个:-

select t1.user, t1.date d1,t2.date d2 ,t1.date-t2.date
from (select @val:=@val+1 rowid,user, date
from mytable,(select @val:=0) a
order by user,date) t1,

(select @val1:=@val1+1 rowid,user, date
from mytable,(select @val1:=1) b
order by user,date) t2

where t1.rowid = t2.rowid
and t1.user = t2.user
and t1.date-t2.date < 1300;

参见 DEMO

关于Mysql:查找时间戳差异小于x的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17513983/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com