2016-01-25 59 views
1

有什麼方法可以優化以下查詢。SQL查詢優化/重新計算

下面的查詢工作正常,但我用其中條件多次。

查詢:

SELECT st_astext(st_line_substring(
            (SELECT st_linemerge(geom) 
             FROM geom_line 
             WHERE i_project = $id), 
            (SELECT $bas/st_length(geom) 
             FROM geom_line 
             WHERE i_project = $id), 
            (SELECT $son/st_length(geom) 
             FROM geom_line 
             WHERE i_project = $id))) 
FROM geom_line 
WHERE i_project = $id; 

問候。 !

+0

是。這個查詢甚至看起來錯了。使用一個i_project可以獲得多少geom_line記錄?一個還是很多? –

回答

0

我天衣你可以嘗試這樣

SELECT st_astext(st_line_substring( st_linemerge(geom) , 
            $bas/st_length(geom), 
           $son/st_length(geom))) 
FROM geom_line 
WHERE i_project = $id;