【发布时间】:2019-10-27 04:08:31
【问题描述】:
第一次堆栈溢出。
我需要仅使用 SQL 查找不重复的序列。
如果我的数据是 (https://i.stack.imgur.com/ZP6Iw.jpg)
System | date | hour
---------+------+-------
Word | 28/8 | 16:00
Word | 28/8 | 16:01
Excel | 28/8 | 16:02
Word | 28/8 | 16:03
Ppt | 28/8 | 16:04
Ppt | 28/8 | 16:05
然后我的输出将是我使用的系统,但如果我多次使用一个系统而没有“中间”另一个系统,它将被写入一次。这不是常规的“删除重复项”问题。只有当两个相同的系统一个接一个时才会出现重复。
(https://i.stack.imgur.com/iG7Cn.jpg)
System | date
--------+-------
Word | 28/8
Excel | 28/8
Word | 28/8
Ppt | 28/8
我在受限于“while”之类的功能的情况下使用 presto。
非常感谢!
【问题讨论】:
-
您使用的是什么种类和版本的 SQL?
-
来自sql标签的描述:问题应该包括代码示例、表结构、示例数据和DBMS实现的标签(例如MySQL、PostgreSQL、Oracle、MS SQL服务器、IBM DB2 等)正在使用。如果您的问题仅与特定 DBMS(使用特定扩展/功能)有关,请改用该 DBMS 的标签。您的问题似乎缺少代码示例、表结构和 DBMS 特定标签。
-
我使用 presto(通过超集),它似乎受到限制。 Thr 表结构如图所示为 3 个字段:系统、日期、小时。样本数据在那里。代码示例:很遗憾,我还是没有。
-
您有订购栏目吗?
-
我第一次注意到一个带有 presto 标签的问题。从this documentation 看来,presto 使用了接近标准 SQL 的东西。有趣的是,这让我想起了以前工作中的一个旧 IBM 软件,它充当了 informix 数据库的 SQL 代理。
标签: sql sequence presto gaps-and-islands