In base alle tue ragioni per non voler utilizzare le variabili definite dall'utente poiché vuoi evitare di avere 2 query, una per l'inizializzazione e una per usarla, puoi usare quanto segue:
SELECT @a:[email protected]+1 serial_number,
marks
FROM student_marks,
(SELECT @a:= 0) AS a;