数据库表同义词/别名

时间:2015-12-28 18:01:25

标签: sql postgresql

所以这是场景:我有一组名为job_listings_yyyyMMdd的表。每天都会创建一个使用上述命名约定的新表,并填充当天的工作列表。

当填充该表时,将启动一个流程来转换表中的数据,以便前端应用程序可以使用它。

所以,随着时间的推移,我有一组表,比如

job_listings_20151226job_listings_20151227job_listings_20151228, ...

它们都具有完全相同的表结构,但每个表仅包含当天的工作列表。

我想要做的是从提供前端的服务中引用一个表,名为job_listings。理想情况下,我的日常流程会创建新的一天的表格,在完成所有处理并且当天的数据准备就绪后,然后让流程更改同义词/别名(即job_listings)以指向当天新填充和处理的表格。

这个想法是数据刷新之间没有任何接缝。 Oracle过去常常有一个名为Synonyms的概念,但我很难弄清楚如何用PostgreSQL做这个。

1 个答案:

答案 0 :(得分:3)

不同的数据库系统具有不同的联合和别名方法。但我认为你想要的是任何SQL系统中可用的东西 - 视图。

CREATE VIEW MOST_RECENT_JOB_LISTINGS AS 
SELECT * FROM job_listings_20151228

只需在创建新表后每天更改此视图的定义。