我想创建一个动态表,从静态表中获取前5列并将其乘以值字段。
1。静态表(Cases):
Column A; Column B; Column C; Column D; Column E; Value; Jan (cases);...;Dec(cases)
2。动态表(value * cases by month)
Column A; Column B; Column C; Column D; Column E; Jan (value * cases);...;Dec(value * cases)
在excel中,我会在它旁边逐个单元地计时。但是每次上传新的静态文件时我都希望sql创建/更新数据库。
确定更新
在审查之后我需要一些不同的东西,我需要拿两张桌子并相互积累
一个表格为cases
,其他表格位于product value
中
cases table:
账户;渠道; [PROD CODE] (这是我的密钥); 扬;二月;三月; 4月;可以;君; 7月; 8月; 9月;十月; 11月;癸
price table:
年; SKU (这是我的密钥); [产品名称];的月;二月;三月; 4月;可以;君; 7月; 8月; 9月;十月; 11月;分解;
数值位于个别月份。
换句话说,我需要cases table
。JAN
* price table
。Jan
其中cases table
。primary key
= price table
。primary key
答案 0 :(得分:0)
看一下计算columns。
或者,如果您需要在计算中包含另一个表,则可以创建用户定义的函数:
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