主键增量基于另一个键

时间:2015-06-23 19:36:16

标签: php mysql laravel

我正在为laravel的多家工厂开发一个会计系统。我有一个自动递增的账单,是主键。我想要的是单独的账单号码。为每个工厂。即如果工厂A创建了ID为1的账单,则其下一个账单应该具有id 2而不是其他ID,例如3,4,因为id 2已被来自工厂B的账单占用。 所以我想要

bill_id  factory_id
   1        A
   1        B
   2        B
   3        B
   2        A 

而不是

bill_id  factory_id
   1        A
   2        B
   3        B
   4        B
   5        A 

我搜索了很多但找不到解决方案。我认为这个stack overflow question是解决方案,但任何人都可以解释它,以及如何在laravel中实现它?

1 个答案:

答案 0 :(得分:0)

TRY:

SELECT * FROM table_name WHERE factory_id='A' ORDER BY bill_id DESC LIMIT 1

这将返回特定工厂的最后一个id,从那时起,您可以执行带增量的INSERT语句。请注意, bill_id 不应该是主要的。