查找连续时间的最小/最大时间戳

7jmck4yq  于 2021-06-17  发布在  Mysql
关注(0)|答案(0)|浏览(261)

我有一个记录不同用户时间戳的表。我需要找到每个用户的连续时间戳的持续时间,基于ant接收到的信号。

CREATE TABLE F30T (
    RN AUTO_INCREMENT NOT NULL PRIMARY,
    UID VARCHAR(25) NOT NULL,
    ANT INT NOT NULL,
    ScanTime TIMESTAMP NOT NULL)

INSERT INTO F30T (
    UID,
    ANT,
    ScanTime)
  VALUES 
    ('4000bcc3584f', 1, '2018-08-17 19:19:04'),
    ('4000bcc3584f', 1, '2018-08-17 19:19:05'),
    ('4000bcc3584f', 1, '2018-08-17 19:19:06'),
    ('4000bcc3584f', 1, '2018-08-17 19:19:25'),
    ('4000bcc3584f', 4, '2018-08-17 19:19:26'),
    ('4000bcc3584f', 2, '2018-08-17 19:19:27'),
    ('4000bcc3584f', 2, '2018-08-17 19:19:28'),
    ('4000bcc3584f', 2, '2018-08-17 19:19:29'),
    ('4000bcc2a44f', 4, '2018-08-17 19:19:05'),
    ('4000bcc2a44f', 4, '2018-08-17 19:19:06'),
    ('4000bcc2a44f', 1, '2018-08-17 19:19:06'),
    ('4000bcc2a44f', 4, '2018-08-17 19:19:07');

所以在上面这个例子中,我想让它显示一个如下的表:

UID         ANT        MIN(ScanTime)          MAX(ScanTime)       Duration
4000bcc3584f     1      2018-08-17 19:19:04    2018-08-17 19:19:06       3
4000bcc3584f     2      2018-08-17 19:19:27    2018-08-17 19:19:29       3
4000bcc2a44f     4      2018-08-17 19:19:05    2018-08-17 19:19:06       3

在这里,它为用户和ant挑选出连续的时间戳,并以min/max对它们进行分组,并找到持续时间。顺便说一句,我正在使用mysql,但这最终会被翻译成python程序
提前感谢你的帮助-我是新的世界编码,只是想找到我的方式通过。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题