提问者:小点点

从另一个SQL表计算值的SQL表


我想创建一个动态表,从静态表中提取第5列,并将其乘以一个值字段。

1.静态表(案例):

Column A; Column B; Column C; Column D; Column E; Value; Jan (cases);...;Dec(cases)

2.动态表(值*按月案例数)

Column A; Column B; Column C; Column D; Column E; Jan (value * cases);...;Dec(value * cases)

在excel中,我只需要对它旁边的单元格进行计时。但是我希望sql在每次上传新的静态文件时创建/更新数据库。

ok更新
查看后,我需要一些不同的东西,我需要采取两个表,并将它们相互累加一个表将是cases和其他在product value
cases表:
帐户;渠道;[产品代码](这是我的P.key);1月;2月;标记;APR;五月;君;七月;8月;9月;OCT;11月;12月
价格表:
年份;SKU(这是我的P.key);[产品名称];简;2月;标记;APR;五月;君;七月;8月;9月;OCT;11月;dec;
number值位于单个月份。
换句话说,我需要
cases tablejan*price tablejanwherecases tableprimary key=price tableprimary key


共1个答案

匿名用户

看看计算列。

或者,如果需要在计算中包含另一个表,可以创建一个用户定义的函数:

CREATE FUNCTION dbo.GetValue(INT @code, INT @rec)
RETURNS INT
AS ...

然后您将修改表,添加列:

ALTER TABLE dbo.Mytbl
   ADD MyCalcCol AS dbo.GetValue(CodeVal, RecVal)

另一个想法..为什么不创建一个视图,甚至创建一个索引视图。

CREATE VIEW vwTableYear AS 
   SELECT [Month number in cases]*[price of product] AS MonthlyValue 
   FROM myTableYear