0

我有 4 张桌子:customer(PK custId)order(PK orderID)orderitem(PK orderItemId)products(PK ProductID)

orderitem 表将 productID 和 OrderItemID 分别作为产品和订单的外键。

Orderitem:
-----------------------
orderID | productID | OrderItemID 



Products:
-------------------------------- 
productID | unitcost | OrderItem 

表有数量列,

我想创建一个存储过程,它将使用 products 表中的 unitcost 中的值和 orderItems 表中的数量来计算 orderItem 中的 totalcost 列。

如果可能的话,我怎样才能让orderID程序来自Orders表,因为它是表的 PK 和orderItemFK

4

1 回答 1

0

如果我正确理解您的问题,您的存储过程的基本查询可能如下所示

SELECT i.*,
       p.unitcost * i.quantity totalcost
  FROM orderitem i INNER JOIN
       order o ON i.orderID = o.orderID INNER JOIN
       products p ON i.productID = p.ProductID
 WHERE i.orderID = 12345

如果您指定要使用的 RDMBS,则可以帮助您将其包装在 SP 中。

于 2013-04-11T09:38:05.760 回答