Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Crie uma visualização com a coluna num_rows - MySQL


Encontrei uma solução para isso:

Primeiro crie uma função:
delimiter //

CREATE FUNCTION `func_inc_var_session`() RETURNS int
    NO SQL
    NOT DETERMINISTIC
     begin
      SET @var := @var + 1;
      return @var;
     end
     //

delimiter ;

Em seguida, defina @var para o número com o qual você deseja começar. Neste caso, zero.

Em seguida, crie a visualização da seguinte forma:
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;

O truque aqui é que você pode ver NULL na coluna do contador. Se isso acontecer, defina @var novamente para o seu número e, em seguida, faça o SELECT * novamente e você verá a coluna do contador preenchida corretamente.