Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Tworzenie tabel tymczasowych w procedurze składowanej MySQL

Porządkowałem to trochę dla Ciebie i dodałem przykładowy kod. Zawsze utrzymuję nazwy parametrów takie same jak pola, które reprezentują, ale przedrostek z p_, co zapobiega problemom. Robię to samo ze zmiennymi zadeklarowanymi w treści sproc, ale z prefiksem v_.

Możesz znaleźć inny z moich przykładów tutaj:

Generowanie drzewa opartego na głębokości z danych hierarchicznych w 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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. pętla foreach :Użycie wszystkich rdzeni w R (zwłaszcza jeśli wysyłamy zapytania sql wewnątrz pętli foreach)

  2. Jakiego typu danych kolumny powinienem użyć do przechowywania dużych ilości tekstu lub html

  3. MySQL - Mac - Błąd 2002 - Nie można połączyć się z lokalnym... przez gniazdo

  4. wyjątek zerowego wskaźnika podczas próby uzyskania dostępu do programu DatabaseHelper w skopiowanej bazie danych z zasobów do danych\dane\

  5. transakcja mysql - wycofaj każdy wyjątek