从两个不同的表中选择并将计算值存储在新创建的表中(Microsoft SQL Server 2014)

问题描述:

从第一个表格中的两个不同表格中获取值的最佳方式是:价格,其中第二个表格具有数量的值,并且我要加倍价格通过数量和计算值,TOTAL_PRICE这将是在表3中存储(新创建)。在第一次我尝试过使用功能,但很多错误弹出,所以我改变它为CTE。但是我的老师建议我不要使用临时表,因为当新的行数据添加到表中时,我们需要再次运行CTE以在每次添加新记录时更新它。还有其他方法吗?谢谢。从两个不同的表中选择并将计算值存储在新创建的表中(Microsoft SQL Server 2014)

+2

你应该真的写一个数据的例子,预期的结果和你迄今为止所尝试过的。 –

你可以尝试像(语法未验证!):

INSERT INTO Table_3 (Cur_Date,Prod,Qty,Total_Price) 
      VALUES (GETDATE()    , 
        <the passed product_ID> , 
        <the passed quantity> , 
        (SELECT (A.Quantity * B.Price) 
         FROM Table_1 A , 
          Table_2 B 
         WHERE A.Product = <Your passed product ID> 
         AND A.Product = B.Product 
        ) 
        ); 

实际措辞将取决于你的DBMS。