1. 程式人生 > 其它 >Excel 2010 SQL應用040 用SQL語句計算兩點距離

Excel 2010 SQL應用040 用SQL語句計算兩點距離

技術標籤:# Execel 2010 SQL應用

源資料表

座標點名稱X座標Y座標
A66.52477.861
B85.75332.375
C63.91857.524
D59.05518.871
E44.59650.337
F99.87816.126
G27.69466.071
H24.9743.823
I22.02396.171
J9.64846.23
K32.99175.561
L37.74377.261

在解析幾何中,常常要求計算兩點問的距離。如圖所示,該表為一系列資料點的座標,現要求根據座標求出各點距原點的距離。

解決方案

SELECT 座標點名稱,(X座標^2+Y座標^2)^0.5 AS 距原點的距離
FROM [sheet1$]

冪運算

在SQL中,除了可以對數字進行四則運算,還有一個特殊的運算子一乘方(^)運算子。利用該運算子可以實現對數字的任意乘方(冪運算)運算。乘方運算子的計算方法如下:

expr^power

引數中expr表示乘方運算的底數,power即為乘方值。如本例中,計算距原點的距離公式為:

現已知"X座標"和"Y座標”,求"X座標”的平方。可以利用乘法"X座標*X座標”的方法實現,但是求平方根卻只能用乘方運算實現。某數的平方根即為該數的0.5次方,因而,
對於power引數,可以填寫0.5以求得平方根。
乘方運算在許多時候能夠替換乘法運算以獲得簡便的表示式。如已知半徑,求球體的體積,可以利用乘法運算將半徑進行三次連乘,但這無疑會使表示式變得非常煩瑣。如利用乘方運算

即可輕鬆通過“半徑^3”的表示式求得半徑的三次方。