Ich habe dafür eine Lösung gefunden:
Erstellen Sie zuerst eine Funktion:
delimiter //
CREATE FUNCTION `func_inc_var_session`() RETURNS int
NO SQL
NOT DETERMINISTIC
begin
SET @var := @var + 1;
return @var;
end
//
delimiter ;
Setzen Sie dann @var auf die Zahl, mit der Sie beginnen möchten. In diesem Fall null.
Erstellen Sie dann die Ansicht wie folgt:
CREATE OR REPLACE VIEW myview (place, name, hour, price, counter)
AS SELECT place, name, hour, price, func_inc_var_session()
FROM yourtable
WHERE input_conditions_here;
Der Trick dabei ist, dass Sie möglicherweise NULL in der Zählerspalte sehen. Wenn dies passiert, setzen Sie bitte @var erneut auf Ihre Nummer und führen Sie dann SELECT * erneut aus, und Sie werden sehen, dass die Zählerspalte richtig ausgefüllt ist.