Mysql
 sql >> база данни >  >> RDS >> Mysql

Създаване на временни таблици в MySQL Stored Procedure

Подредих го малко за вас и добавих примерен код. Винаги поддържам имената на моите параметри същите като полетата, които представляват, но префикс с p_, което предотвратява проблеми. Правя същото с променливите, декларирани в тялото на sproc, но префикс с v_.

Можете да намерите още един от моите примери тук:

Генериране на дърво на базата на дълбочина от йерархични данни в MySQL (без CTE) a>

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. Какво означават иконите на колоните на mysql Workbench

  2. MySQL ГРЕШКА 1290 (HY000) --secure-file-priv option

  3. Amazon RDS не може да изпълни командата SET GLOBAL

  4. Как мога да добавя коментари в MySQL?

  5. REGEXP С PDO Mysql