如何获取数据中第一个wire_open和wire_close的组
P粉317679342
P粉317679342 2024-02-26 08:47:46
[MySQL讨论组]

这就是我想要输出的数据,它与蓝线以及我附加的所需输出照片相匹配,请查看并使用 SQL 查询获得所需的结果

P粉317679342
P粉317679342

全部回复(1)
P粉571233520

测试一下:

WITH
cte AS (
    SELECT *, SUM(delay_ping_type = 'wire_close') OVER (ORDER BY last_updated_on DESC) group_no
    FROM source_table
)
SELECT MIN(last_updated_on) wire_open, 
       MAX(last_updated_on) wire_close 
FROM cte
-- WHERE group_no > 0   -- removes final open without close
GROUP BY group_no
-- HAVING wire_open 

https://www.db-fiddle.com/f/njuPYFYug87jTWKHHv6yRK/2 (感谢 @lemon 的小提琴)。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号