2014-01-15 21 views
0

是否有可能將hasrsine公式結合到mysql數據庫中,以便我可以從PHP腳本中調用該函數。在MySQL中創建Haversine公式

例如,PHP中的 我將調用:從代碼=「CW84AD」的郵政編碼中選擇*,從代碼=「CH73TD」的郵政編碼中選擇*。

我可以稱之爲「Select haversine(CW84AD,CH73TD)」嗎?

+0

這是可能的,是的......它被稱爲用戶定義的函數,雖然你需要從SQL查詢中正確地傳遞參數 –

+0

爲什麼你稱之爲Haversine函數?這令人困惑http://en.wikipedia.org/wiki/Haversine_formula –

回答

0

您不能創建函數,因爲函數只返回一行。

如果你想返回多行,你可以創建過程。

DELIMITER // 

CREATE PROCEDURE haversine(IN arg1 VARCHAR(255), IN arg2 VARCHAR(255)) 

BEGIN 
     Select * from postcodes where code = arg1 or code= arg2; 

END // 
DELIMITER ; 

然後你可以調用這個過程。

CALL hasrsine('CW84AD','CH73TD');