私はこれに対する解決策を見つけました:
最初に関数を作成します:
delimiter //
CREATE FUNCTION `func_inc_var_session`() RETURNS int
NO SQL
NOT DETERMINISTIC
begin
SET @var := @var + 1;
return @var;
end
//
delimiter ;
次に、@ varを開始する数値に設定します。この場合は、ゼロです。
次に、次のようにビューを作成します。
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;
ここでの秘訣は、カウンター列にNULLが表示される可能性があることです。これが発生した場合は、@ varを自分の番号に再度設定してから、SELECT *を再度実行すると、カウンター列が正しく入力されていることがわかります。