一、建立臨時表可以将查詢結果寄存。報表制作的查詢sql中可以用到。
(1)關于寄存方式,mysql不支援:select * into tmp from maintenanceprocess
(2)可以使用:
create table tmp (select ...)
舉例:
#單個工位檢修結果表上部
drop table if EXISTS tmp_單個工位檢修結果表(檢查報告)上部;
create table tmp_單個工位檢修結果表(檢查報告)上部 (select workAreaName as '機器号',m.jobNumber as '檢修人員編号',u.userName as '檢修人員姓名',loginTime as '檢修開始時間',
CONCAT(FLOOR((TIME_TO_SEC(exitTime) - TIME_TO_SEC(loginTime))/60),'分鐘') as '檢修持續時長'
from maintenanceprocess as m LEFT JOIN user u ON m.jobNumber = u.jobNumber where m.jobNumber = [$檢修人員編号] and loginTime = [$檢修開始時間]);#建立臨時表
select * from tmp_單個工位檢修結果表(檢查報告)上部;
備注:[$檢修開始時間]是可輸入查詢的值
(3)建立臨時表的另一種方式舉例:
存儲過程中:
BEGIN
#Routine body goes here...
declare cnt int default 0;
declare i int default 0;<