0
我正在查詢一個postgres數據庫表,我只能讀取並且無法以任何方式進行修改。長話短說我需要每天運行一個查詢來在幾天內提取記錄。我一直在每天都在進行修改時間戳參數。該表大約有4000萬條記錄,我正在運行從sql server到鏈接服務器的查詢。如何在POSTGRES查詢中將日期轉換爲時間戳時避免進行全表掃描?
c_stime字段上有一個索引,它是我試圖利用的時間戳,但是當我在字段上執行某個函數時,我殺死了這個優點。以下是我的一些結果:
select * from p_table where c_stime >= '2013-09-24 00:00:00.0000000'
select * from p_table where c_stime >= current_date::timestamp
select * from p_table where c_stime >= current_date+ interval '0 hour'
第一次運行10秒,第二次運行74秒,第三次運行88秒。想要像第二/第三的動態表現,接近第一。任何幫助讚賞
有多少40萬行的是檢索? –
50-70k是您試圖查詢查詢計劃的平均值 – kdonah3
? –