在mysql中 比如第一个字段的值是zl00001如何写一个函数把这个字段在添加的时候变成自增的  比如第二个是zl00002这样的函数怎么写!

解决方案 »

  1.   

    concat ( 'zl' , mid(第一个字段,2) + 1)
      

  2.   

    像这样好像 不行呀!!!还有没有什么好的办法呀 就是写一个函数每次添加的时候只需要调用这个函数就能自增的  比如第一个是zl00001  第二个就是zl00002  第三个就是zl00003  依次类推
      

  3.   

    你整一个自增字段,这样1,2,3这样的值就出来了,然后在查询的是,用concat连接起来,就得到你要的值了。
      

  4.   

    不需要调用函数,无非是个显示的问题。你的这个编码似乎是5位数字长度的,可以调得更长一些。mysql> create table abcd(id int(5) zerofill auto_increment primary key);
    Query OK, 0 rows affected (0.00 sec)mysql> insert into abcd values(null);
    Query OK, 1 row affected (0.06 sec)mysql> insert into abcd values(null);
    Query OK, 1 row affected (0.00 sec)mysql> select * from abcd;
    +-------+
    | id    |
    +-------+
    | 00001 |
    | 00002 |
    +-------+
    2 rows in set (0.02 sec)mysql> select concat('zl', id) from abcd;
    +------------------+
    | concat('zl', id) |
    +------------------+
    | zl00001          |
    | zl00002          |
    +------------------+
    2 rows in set (0.00 sec)mysql>