Generate serial number in mysql query

mysql, sql

Solution

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;

Problem

I have a table: student_marks ``` marks ----- 44 55 64 98 76 ``` Expected output: ``` serial_number|marks -------------------- 1 | 44 2 | 55 3 | 64 4 | 98 5 | 76 ``` Using mysql user defined variables, it could be done using query: ``` set @a:=0;select @a:=@a+1 serial_number, marks from student_marks; ``` Is there any way to achieve this in msyql without using user defined variables?

Original source