我有一個帶有 lat 和 lng 坐標的表,需要將距離添加到 Bigquery 中名為“距離”的新列中。
桌子
開始緯度 | end_lat | start_lng | end_lng |
---|---|---|---|
41.8964 | 41.9322 | -87.661 | -87.6586 |
41.9244 | 41.9306 | -87.7154 | -87.7238 |
41.903 | 41.8992 | -87.6975 | -87.6722 |
我不知道該怎么做。我看到了一些例子,但根本無法將其應用于這種情況。任何提示?
uj5u.com熱心網友回復:
ST_DISTANCE 函式將計算 2 個點之間的距離(以米為單位)。
with my_data as (
select 1 as trip_id, 41.8964 as start_lat, 41.9322 as end_lat, -87.661 as start_lng, -87.6586 as end_lng union all
select 2, 41., 41.9306, -87.7154, -87.7238
)
select trip_id,
ST_DISTANCE(ST_GEOGPOINT(start_lng, start_lat), ST_GEOGPOINT(end_lng, end_lat)) as distance_in_meters
from my_data
輸出:
trip_id | distance_in_meters |
---|---|
1 | 3985.735019583467 |
2 | 103480.52812005761 |
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/529782.html
標籤:Google Cloud Collective sql谷歌大查询坐标距离
上一篇:別人的SQL陳述句