如果我有一个产品表和另一个制造商表,并且我希望该表有产品数量,那么postgres中是否有一种方法可以说"此列等于其他行中的行数符合这个条件的表"?
编辑:我的意思是说将自动计算列值。因此,如果我有一个包含红色产品数量的列的表,我希望此列始终等于执行select * from products where color='red';
所产生的行数,而不必自己执行该查询。
答案 0 :(得分:1)
您不应将计算值存储在操作数据库中。如果是数据仓库,请继续。
您可以使用视图为您进行计算。
http://sqlfiddle.com/#!15/0b744/1
您可以使用materialized view来提高效果,并使用products
表格上的触发器对其进行刷新。