某个字段定义为工号,工号长度为5位数字,为每个地区设置一个前缀。那A地区的工号为 A0000,A0001,A0002....;B地区工号 B0000,B0001,B0002....;C地区等待...
如何能实现在同一列字段内,让不同地区的工号自动增长,并区分地区,谢谢。

解决方案 »

  1.   

    你的INSERT 语句是什么,列出来看下啊!
      

  2.   

    一种解决方案,可用但不推荐。给每个部门创建一个表, create table tN (id int primary key auto_increment)
    然后在程序判断哪个部门,就到哪个部门中 insert into tN values(null); select LAST_INSERT_ID() 得到编号。
      

  3.   


    没有Insert语句,希望是用到触发器来得出此列的值。
      

  4.   

    看看这样是否可行?  先判断一下类型,再找出对应类型的最大值,再加1
    类型字段type(A/B/C/D......)
    触发器中判断
    IF(A)
    num = SELECT MAX(工号) WHERE TYPE = A
    num++
    SET 工号=concat(type,num)
    ELSEIF(B)