比如班级号049101,在其后面加学生号如:04910101,04910102....后面2位数中递增.后面两为99后不能在加,怎么写代码判断数据库里(mysql)的学号的最大值然后在加1呢?

解决方案 »

  1.   

    为什么不在学生表中加入一个班级ID,然后在加上一个学生在班级中的ID,这样处理起来更方便.
    按照你现在的情况,如果你要获得某个班级中的学生ID大小,应该可以这样
    SELECT MAX(学生号) FROM 学生 WHERE 学生号 LIKE '049101%' 
    以获得同一班级的最大学好
      

  2.   

    select lpad(nvl(max((TO_NUMBER(BOOK_ID))+ 1),1), 5,'0') BOOK_ID
                             from BOOK_TABLE oracle里的连番的实现  mysql没用过,试着改一下吧
      

  3.   

    在表里作为主键的话,是不是也可以写成一个hilo seq的规则,高位为班级号,低位位学号