zoukankan      html  css  js  c++  java
  • mysql临时表用法分析【查询结果可存在临时表中】

    本文实例讲述了mysql临时表用法。分享给大家供大家参考,具体如下:

    一、创建临时表可以将查询结果寄存。报表制作的查询sql中可以用到。

    (1)关于寄存方式,mysql不支持:

    1
    select * into tmp from maintenanceprocess

    (2)可以使用:

    1
    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
    

      

     
  • 相关阅读:
    J.U.C AQS(abstractqueuedssynchronizer--同步器)
    垃圾收集器与内存分配策略---内存的分配与回收
    16.合并两个排序的链表
    15.反转链表
    14.链表中倒数第k个节点
    15.Subtree of Another Tree(判断一棵树是否为另一颗树的子树)
    flask 学习app代码备份
    TCSRM5961000
    URAL1291. Gear-wheels
    hdu4422The Little Girl who Picks Mushrooms
  • 原文地址:https://www.cnblogs.com/wl-blog/p/15439543.html
Copyright © 2011-2022 走看看