本文实例讲述了mysql临时表用法。分享给大家供大家参考,具体如下:
一、创建临时表可以将查询结果寄存。报表制作的查询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;
set cnt = func_get_splitStringTotal(f_string,f_delimiter);
DROP TABLE IF EXISTS `tmp_split`;
create temporary table `tmp_split` (`val_` varchar(128) not null) DEFAULT CHARSET=utf8;
while i cnt
do
set i = i + 1;
insert into tmp_split(`val_`) values (func_splitString(f_string,f_delimiter,i));
end while;
END
更多关于MySQL相关内容感兴趣的读者可查看本站专题:《MySQL查询技巧大全》、《MySQL常用函数大汇总》、《MySQL日志操作技巧大全》、《MySQL事务操作技巧汇总》、《MySQL存储过程技巧大全》及《MySQL数据库锁相关技巧汇总》
希望本文所述对大家MySQL数据库计有所帮助。
您可能感兴趣的文章:- Mysql临时表及分区表区别详解
- Mysql临时表原理及创建方法解析
- MySQL 5.7临时表空间如何玩才能不掉坑里详解
- MySQL问答系列之什么情况下会用到临时表
- 关于JDBC与MySQL临时表空间的深入解析
- MySQL临时表的简单用法介绍
- MySQL中Update、select联用操作单表、多表,及视图与临时表的区别
- MySQL两种临时表的用法详解
- 浅谈MySQL临时表与派生表
- MySQL中临时表的基本创建与使用教程
- MySQL中关于临时表的一些基本使用方法
- MySQL使用临时表加速查询的方法
- MySQL中临时表的使用示例