将Postgres列设置为相等的查询结果

时间:2015-11-09 22:19:10

标签: postgresql

如果我有一个产品表和另一个制造商表,并且我希望该表有产品数量,那么postgres中是否有一种方法可以说"此列等于其他行中的行数符合这个条件的表"?

编辑:我的意思是说将自动计算列值。因此,如果我有一个包含红色产品数量的列的表,我希望此列始终等于执行select * from products where color='red';所产生的行数,而不必自己执行该查询。

1 个答案:

答案 0 :(得分:1)

您不应将计算值存储在操作数据库中。如果是数据仓库,请继续。

您可以使用视图为您进行计算。

http://sqlfiddle.com/#!15/0b744/1

您可以使用materialized view来提高效果,并使用products表格上的触发器对其进行刷新。