0

我有一个会计应用程序,该应用程序具有称为公司资料的功能,而该功能又具有一个名为“InvoicePrefix”的字段。因此,如果我的公司的发票前缀为 MY,则所有发票都应生成为 MY/2013-2014/001,依此类推......同样,如果我的 invoicePrefix 为 ME,发票应从 ME/2013-2014/ 开始001 等等。

现在我在 mysql 中有一个所有公司的通用发票表,因为我不知道之前的公司数量。

我需要的是每个 invoicePrefix 从 1 开始的发票序列。目前我正在生成发票编号(最后出现 -MY/2013-2014/ 001)。这有一个问题,即每个公司的顺序都会中断。

那么我怎样才能用一些智能的mysql查询语句来完成呢?

4

1 回答 1

0

维护一个种子表,记录每个公司的当前指针,例如

Company | Year      | Seed
MY      | 2013-2014 |  1
ME      | 2013-2014 |  20
ME      | 2012-2013 |  1120

创建一个用于在您的表中插入记录的过程首先检查该特定年份的表中是否存在公司记录,如果没有插入该记录并启动种子计数器,1否则获取最新的种子值并更新计数器,并在获得值后插入相应地记录在您的表格中。

于 2013-04-01T05:08:44.770 回答