在postgis中,ST_GeomFromText
的調用非常昂貴嗎?我主要問的是因爲我有一個經常被調用的查詢,它試圖找到最接近另一個匹配某個條件的點的點,而且這個點也在另一個點的某個距離內,以及我目前寫它的方式,它正在執行相同ST_GeomFromText
兩次:ST_GeomFromText的價格是多少
$findNearIDMatchStmt = $postconn->prepare(
"SELECT internalid " .
"FROM waypoint " .
"WHERE id = ? AND " .
" category = ? AND ".
" (b.category in (1, 3) OR type like ?) AND ".
" ST_DWithin(point, ST_GeomFromText(?," . SRID .
" ),". SMALL_EPSILON . ") " .
" ORDER BY ST_Distance(point, ST_GeomFromText(?,", SRID .
" )) " .
" LIMIT 1");
有沒有更好的方法來重寫這個?
稍微OT:在預覽屏幕中,我所有的下劃線都被渲染爲& # 9 5 ;
- 我希望這不會在帖子中顯示出來。
+1顯示如何使用`explain`來獲取數字而不是信念。 [我怎樣才能使用psql來計算SQL查詢](http://dba.stackexchange.com/questions/3148/how-can-i-time-sql-queries-using-psql)在過早優化之前,Q&A可能值得探索套入。 – jwd630 2016-07-13 20:42:34