我有桌子温度:
id sentence pcount ncount
1 - 3 5
2 - 2 6
3 - 1 5
4 - 7 2
……
我想从上面的表中创建表,当表改变时应该得到更新。
New_temp
ind_type Index_val
pcount sum(pcount)
ncount sum(ncount)
有可能吗?
请告诉我怎么做。
最佳答案
不要创建新表。只需创建一个视图:
create view new_temp
select 'pcount' as ind_type, sum(pcount) as thecount
from temp union all
select 'ncount', sum(ncount)
from temp;
只有在出于性能原因确实需要时才创建新表。
如果您确实创建了一个新表,那么当值更改时(
temp
,insert
,update
,delete
),您还必须为表编写触发器。视野要简单得多。编辑:
哦,我误解了你要的桌子的格式。你想要一行两列。更简单的是:
create view new_temp
select sum(pcount) as pcount, sum(ncount) as ncount
from temp;