sql >> Databáze >  >> RDS >> Mysql

Vytváření dočasných tabulek v MySQL Stored Procedure

Trochu jsem to pro vás upravil a přidal ukázkový kód. Vždy ponechávám názvy svých parametrů stejné jako pole, která představují, ale předponu s p_, což zabraňuje problémům. Totéž dělám s proměnnými deklarovanými v těle sproc, ale předponu s v_.

Další z mých příkladů můžete najít zde:

Generování stromu založeného na hloubce z hierarchických dat v MySQL (bez CTE)

drop procedure if exists emp_performance;

delimiter #

create procedure emp_performance
(
in p_employee_id varchar(10)
)
begin

declare v_counter int unsigned default 0;

create temporary table tmp engine=memory select time_in, time_out 
 from attendance where employee_id = p_employee_id;

-- do stuff with tmp...

select count(*) into v_counter from tmp;

-- output and cleanup

select * from tmp order by time_in;

drop temporary table if exists tmp;

end#

delimiter ;

call emp_performance('E123456789');


  1. Mám zacházet s GraphQL ID jako s řetězcem na klientovi?

  2. Unicode literály MySQL

  3. Jak vytvořit tabulku pomocí databáze sqlite v Androidu?

  4. Mám specifikovat INDEX i UNIQUE INDEX?