拆分付款类型SQL

时间:2017-06-13 20:12:19

标签: sql sql-server database database-design invoice

嗨,我有这张桌子

销售

  • id_sales(pk)

付款

  • payment_id(pk)

  • payment_type_id(fk)

  • id_sales(fk)

payments_type

  • payment_type_id(pk)

  • 详细信息(例如:现金,借记卡,信用卡,直接信用)

我如何管理销售可以有两种类型的付款,例如:销售是100.00美元我用现金支付50.00美元另一个50.00美元借记卡,并且表记录它。

您是否认为将两个payment_type_id放在桌面付款上是更好的方法,并且就像这样,只需一次付款就可以让另一个付诸实施NULL

1 个答案:

答案 0 :(得分:1)

在“付款”表格中添加新的“金额”列。现在,您可以将拆分金额与付款一起存储。

当您有拆分金额时,您将1条记录插入销售,2条记录插入付款,每个销售交易的每笔付款一条。您不需要将空记录放入付款,只需记录每个合法付款的记录。如果有人使用2种不同的信用卡等付款,您现在甚至可以支付相同类型的多笔付款。

所有付款都与1个销售交易(id_sales)相关。每笔付款都有1种付款方式,您无需在任何列中输入空白记录或NULL。