在mysql查询中生成序列号 [英] Generate serial number in mysql query
本文介绍了在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查询中生成序列号的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文