SQL数据库设计 - 三个表:产品,销售订单和采购订单 - 如何存储产品数量?

时间:2016-05-12 06:58:17

标签: mysql database

我有三个表:productsales_order(我销售产品的地方)和purchase_order(我购买产品的地方)。现在我可以考虑两种方法来保持每种产品的数量:

  1. product表格中有一列名为quantity;插入sales_order时,我减去数量;插入purchase_order时,我会添加数量
  2. 我不是将数量存储在product表中,而是每次需要获取sales_order表时计算purchase_orderproduct表中的数量/ LI>

    我想知道第二种方法是否比第一种方法更可取?我更喜欢第二个,因为它不存储任何冗余数据;但是,我不太确定每次计算数量是否有点太多计算。我想知道这里的惯例和最佳做法是什么?谢谢!

2 个答案:

答案 0 :(得分:0)

我会使用第一个。在订购时,在编码u代码-x金额中向产品表添加一列,然后您将在订单表中显示该列。你可以找到一个脚本,当产品达到一定数量时,它会通过电子邮件发送给你并告诉你补充库存。然而第二个也会工作,sql是非常强大的,所以我不会因为它可能会比我们可以更快地解决这个问题而大声疾呼

答案 1 :(得分:0)

我更喜欢第一个,因为内存计算比发出select语句检查销售订单和采购订单更快,假设检索数量值的次数远远大于数量值的次数更新。