我有多个表,例如1月,2月等等。每个月都有一栏“利润”。我可以通过以下方式轻松找到每个月的总利润:
select sum(profit) from January
但是,让我们说我想要一个自动计算每个月总利润的表/视图。有没有办法为我计算该特定数据库中的所有表格?
此外,如果我更新任何行,它会自动更新视图/表。这很容易做到。
任何提示?显然,每月总和的连接子句不会有帮助。
答案 0 :(得分:1)
如果您想获得每月的总利润,则可以创建view
以使用union all
来获取结果。
select *
from (
select sum(profit) profit, 'January' mnth from January
union all
select sum(profit) profit, 'February' mnth from February
union all
select sum(profit) profit, 'March' mnth from March
...
select sum(profit) profit, 'December' mnth from December
) t
要考虑的一件事是,将月度数据存储在单独的表中可能不是最好的主意。一般来说,这可以改为更标准化的方法。