SQL - Agg Func 曼哈顿距离

Joh*_*han 1 mysql sql


SO Link 没有回答这个问题。我不知道如何在 Hackerspace 上解决这个查询。在线解决方案似乎都不起作用。这是一个错误还是我做错了什么?

将 P1(a,b) 和 P2(c,d) 视为二维平面上的两个点。

a 恰好等于北纬的最小值(STATION 中的 LAT_N)。

b 恰好等于西经的最小值(STATION 中的 LONG_W)。

c 恰好等于北纬的最大值(STATION 中的 LAT_N)。

d 恰好等于西经的最大值(STATION 中的 LONG_W)。

查询点之间的曼哈顿距离并将其四舍五入到小数位数。

输入格式

STATION表描述如下:

车站表

  1. 身份证 | 数字
  2. 城市 | VarChar2(21)
  3. 状态 | VarChar2(2)
  4. LAT_N | 数字
  5. LONG_W | 数字

数据库:MySQL

来源:https : //www.hackerrank.com/challenges/weather-observation-station-18/problem

链接:两个经度和纬度之间的距离(尝试过,但没有提供任何答案。)

SELECT ROUND(ABS(MIN(Station.LAT_N) - MIN(Station.LONG_W)) + ABS(MAX(Station.LAT_N) - MAX(Station.Long_W)), 4) 
FROM Station;
Run Code Online (Sandbox Code Playgroud)

âńō*_*oůŜ 5

曼哈顿距离的公式是| a - c| + | b - d| 其中 a 和 b 分别是最小纬度和经度,而 c 和 d 分别是最大纬度和经度。

select 
  round(
    abs(
      min(lat_n)- max(lat_n)
    ) + abs(
      min(long_w)- max(long_w)
    ), 4
  ) 
from 
  station;
Run Code Online (Sandbox Code Playgroud)

我得到了 25 哈克积分!所以我可以从你那里得到 25 分吗?