2011-05-29 137 views
0

以下glength()語句總是返回null。Mysql點數據類型&glength返回null

SET @mref_point1=point(12.937060,77.671280); 
SET @mref_point2=point(13.937060,73.271280); 

SELECT GLENGTH(LINESTRINGFROMWKB(linestring(ASBINARY(@mref_point1),ASBINARY(@mref_point2)))); 

有人能指出我在正確的方向。

回答

1

我張貼此作爲一個答案,讓代碼更容易閱讀:

嘗試通過這些步驟縮小的問題:

select ASBINARY(@mref_point1) 

如果沒有返回null繼續前進,這樣做:

select linestring(ASBINARY(@mref_point1),ASBINARY(@mref_point2)) 

如果沒有返回null繼續前進,這樣做:

select LINESTRINGFROMWKB(linestring(ASBINARY(@mref_point1),ASBINARY(@mref_point2)))