2015-12-28 22 views
0

所以這裏是場景:我有一組名爲job_listings_yyyyMMdd的表。每天都會創建一個使用上述命名約定的新表,並在當天的工作列表中填充該表。數據庫Table同義字/別名

當該表被填充時,將啓動一個進程以轉換表中的數據,以便前端應用程序可以使用它。

所以,隨着時間的推移,我有一組表,像

job_listings_20151226job_listings_20151227job_listings_20151228, ...

它們都具有完全相同的表結構,但每張表只包含當天的工作列表。

我想要做的是從提供前端數據的服務中引用一個表,名稱爲job_listings。理想情況下,我的日常流程將創建新的一天的表格,並且在所有處理完成並且當天的數據已準備好投放之後,然後讓該流程更改同義詞/別名(即job_listings)以指向新填充和處理當天的桌子。

這個想法是在數據刷新之間沒有任何接縫。 Oracle曾經有一個叫做同義詞的概念,但我很難弄清楚如何用PostgreSQL來做到這一點。

回答

3

不同的數據庫系統有不同的聯合和別名方法。但我認爲你想要的是任何SQL系統中可用的東西 - 一個視圖。

CREATE VIEW MOST_RECENT_JOB_LISTINGS AS 
SELECT * FROM job_listings_20151228 

只是在新表格創建後每天更改此視圖的定義。

+0

哎y,,那麼簡單。有時候,我過分複雜的東西。謝謝! – liltitus27