本文介绍了在mysql查询中生成序列号的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一张桌子:student_marks
I have a table: student_marks
marks ----- 44 55 64 98 76预期输出:
serial_number|marks -------------------- 1 | 44 2 | 55 3 | 64 4 | 98 5 | 76使用mysql用户定义的变量,可以使用查询来完成:
Using mysql user defined variables, it could be done using query:
set @a:=0;select @a:=@a+1 serial_number, marks from student_marks;是否有任何方法可以在msyql中实现而不使用用户定义的变量?
Is there any way to achieve this in msyql without using user defined variables?
推荐答案基于您不想使用用户定义变量的原因,因为您希望避免使用2个查询,一个用于初始化,一个用于使用它,您可以使用以下方法:
Based on your reasons for not wanting to use user defined variables as wanting to avoid having 2 queries, one for inializing and one to use it you could use the following:
SELECT @a:=@a+1 serial_number, marks FROM student_marks, (SELECT @a:= 0) AS a;更多推荐
在mysql查询中生成序列号
发布评论