微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何获得同一列中两行之间的差异

如何解决如何获得同一列中两行之间的差异

这是到目前为止,我正在尝试使同一列中的行之间有所不同。我不知道。我正在尝试在Clickhouse中进行查询

SELECT 
    session_id,created,DATEDIFF(mi,time1.created,time2.created)
FROM impressions as time1
LEFT JOIN impressions i2 as time2
  ON time1.session_id = time2.session_id + 1

解决方法

查询应使用dateDiff-功能:

SELECT 
    time1.session_id,time2.session_id,time1.created,dateDiff('minute',time2.created,time1.created)
FROM impressions AS time1
LEFT JOIN impressions AS time2 ON time1.session_id = toInt32(time2.session_id + 1)
SETTINGS join_use_nulls = 1
,

我认为Clickhouse中的语法是:

SELECT time1.session_id,DATEDIFF('minute',time1.created)
FROM impressions time1 LEFT JOIN
     impressions i2 time2
     ON time1.session_id = time2.session_id + 1

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。