我创建了包含列id,名称,批处理,rollnumber
的用户表我想创建一个存储过程,每个批次都会生成卷号。
假设我有100名学生和5批(A,B,C,D,E)。
每批次应生成1-20号卷号。
提前谢谢
答案 0 :(得分:1)
试试这个:
SELECT u.id, u.name, u.batch, IF(@batch = (@batch := u.batch), @rollNo := @rollNo + 1, @rollNo := 1) rollNo
FROM userTable u, (SELECT @batch:='', @rollNo:=1) A
ORDER BY u.batch, u.name