sql - SQL 从另一列创建计算列
问题描述
我正在尝试创建一个计算列,其中值来自另一个表。该表必须存储在数据库中。
名为 TABLE 1 的现有表
ID GROUP ITEM_NO COST_A COST_B
1 1 1001 20.00 30.00
2 1 1002 10.00 25.00
3 2 1005 15.00 25.00
在名为表 2 的新表中,我希望有以下内容。本质上,GROUP_TOTALCOST 是每个组的 COST_A 加上 COST_B
Code GROUP(FK) GROUP_TOTALCOST
001 1 85.00
002 2 40.00
这是我可以在 ALTER TABLE ADD COLUMN 或 CREATE TABLE 语句中实现的吗?谢谢
解决方案
你不能有一个基于另一个表的计算列,你可以创建一个视图,每当你从视图中选择它是最新的
如果您使用的是 sql server,这是您可能要考虑的语法
create view yourviewname
as
select
ROW_NUMBER() over (order by GROUP) as rownumber , GROUP, sum(Cost_A) + sum( COst_B) as GROUP_TOTALCOST
from testx
group by GROUP
推荐阅读
- nlp - Dataframemapper 功能列表
- reactjs - 使用状态挂钩将道具向下传递给孩子
- wagtail-streamfield - 最新的 Wagtail 无法编辑现有的流场
- angular - 错误类型错误:a.getCountryCodeOrDefault 不是函数
- javascript - Jquery 切换不隐藏/显示特定元素
- git - 如何在 git 中检查裸仓库的状态
- sourceforge-appscript - 如何缩短下面的代码?谢谢
- python - Celery Crontab 在不挑选任务
- java - 为什么我的进度条渲染不正确?
- c# - ASP.NET Core Identity,如何在不同的数据库中创建用户