如何在SQL Server 2008 r2中添加多个值,并根据付费金额检测项目。
订单表:
OID Item Price
1 A 38
2 B 19
3 C 39.5
付款表:
PID Amount
1 38
2 58.5
现在当查询类似
时Select ItemName from A inner join B on OID=PID and Price=Amount;
此处我可以检索ItemA
,但此查询不会返回项目B和C,因为
付款是这两项的总和。
答案 0 :(得分:1)
您的表格结构错误。 你需要一个带有order_Id和Payment_Id的额外表。 像OID一样,PID表名是OrderPayment,然后使用这个Select语句
从A.PID = OrderPayment.PID
上的A.OID = OrderPayment.OID内部联接B中的OrderPayment内部联接A中选择A.ItemName