clickhouse计算前后两点间经纬度距离

问题

在这里插入图片描述
计算如图所示前后两点经纬度的距离?

方法

1、用开窗函数将如图所示数据下移一行

select
	longitude lon1,
	latitude lat1,
	min(longitude) over(
	order by time1 asc rows between 1 PRECEDING and 1 PRECEDING) lon2,
	min(latitude) over(
	order by time1 asc rows between 1 PRECEDING and 1 PRECEDING) lat2
from
	table1

在这里插入图片描述
完整sql

select
	time1 ,
	lon1,
	lat1,
	lon2,
	lat2,
	greatCircleDistance(a.lon1,
	a.lat1,
	a.lon2,
	a.lat2) distance
from
	(
	select
		time1,
		longitude lon1,
		latitude lat1,
		min(longitude) over(
		order by time1 asc rows between 1 PRECEDING and 1 PRECEDING) lon2,
		min(latitude) over(
		order by time1 asc rows between 1 PRECEDING and 1 PRECEDING) lat2
	from
		table1

3、简化版sql

select
	time1 ,
	longitude,
	latitude,
	greatCircleDistance(longitude , latitude ,
	min(longitude) over(
	order by time1 asc rows between 1 PRECEDING and 1 PRECEDING),
	min(latitude) over(
	order by time1 asc rows between 1 PRECEDING and 1 PRECEDING)) distance
from
	table1

相关推荐

  1. 实验5-4 使用函数计算距离

    2024-02-07 13:48:02       30 阅读
  2. mysql 根据经纬度计算距离

    2024-02-07 13:48:02       6 阅读
  3. VCG 计算之间距离

    2024-02-07 13:48:02       41 阅读
  4. 计算距离工具类

    2024-02-07 13:48:02       15 阅读
  5. C# 计算个坐标直接的距离

    2024-02-07 13:48:02       14 阅读
  6. 力扣1385.个数组距离

    2024-02-07 13:48:02       7 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-02-07 13:48:02       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-02-07 13:48:02       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-02-07 13:48:02       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-02-07 13:48:02       18 阅读

热门阅读

  1. 车载系统相关

    2024-02-07 13:48:02       30 阅读
  2. 深入Elasticsearch:线程池的原理与应用

    2024-02-07 13:48:02       31 阅读
  3. c++小游戏

    2024-02-07 13:48:02       24 阅读
  4. 冯唐《金线》,中国版金字塔原理

    2024-02-07 13:48:02       28 阅读
  5. Lua迭代器以及各种源函数的实现

    2024-02-07 13:48:02       29 阅读
  6. 极狐GitLab 与 Datadog 的集成配置

    2024-02-07 13:48:02       29 阅读