【问题标题】:creating stored procedure in mysql to generate roll numbers in each batch在mysql中创建存储过程以在每批中生成卷号
【发布时间】:2013-06-19 07:27:44
【问题描述】:

我创建了包含 id、name、batch、rollnumber 列的用户表

我想创建一个存储过程,它将为每批生成卷号。

假设我有 100 个学生和五个批次(A、B、C、D、E)。

它应该在每批中生成卷号 1-20。

提前谢谢你

【问题讨论】:

  • 嗨!欢迎来到 Stackoverflow。要获得答案,您必须提供更多信息。比如你试过什么?你有错误吗?

标签: mysql sql select stored-procedures sql-order-by


【解决方案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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-01-12
    • 2014-09-29
    • 2012-05-28
    • 2017-06-19
    • 2013-01-02
    • 2012-03-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多