mysql 临时表 创建和插入

mysql 2张表插入到临时表里
一个项目用到多张表数据合计查询
by 夜色紫宸風

DROP TABLE IF EXISTS tmp_table;
CREATE TEMPORARY TABLE tmp_table SELECT appid,uid FROM `sz_app_credit_log_201111`;
INSERT INTO tmp_table  SELECT appid,uid FROM `sz_app_credit_log`;
SELECT * FROM tmp_table;

具体例子

DROP TABLE IF EXISTS tmp_table;
CREATE TEMPORARY TABLE tmp_table SELECT appid,uid,sum(ovalue) as s FROM `sz_app_credit_log_201111` l where l.appid='7' and l.operate='add' and l.dateline>=UNIX_TIMESTAMP('2011-11-01') and l.dateline<UNIX_TIMESTAMP('2011-12-01')  GROUP BY uid;
INSERT INTO tmp_table  SELECT appid,uid,sum(ovalue) as s FROM `sz_app_credit_log` l where l.appid='7' and l.operate='add' and l.dateline>=UNIX_TIMESTAMP('2011-11-01') and l.dateline<UNIX_TIMESTAMP('2011-12-01') GROUP BY uid;
SELECT t.appid,t.uid,m.tel,sum(t.s) as s FROM tmp_table t left join sz_ucenter_members m on t.uid=m.uid group by uid order by sum(t.s) desc limit 0,500;
时间: 2024-10-30 16:22:31

mysql 临时表 创建和插入的相关文章

mysql视图创建临时表查询问题?

问题描述 mysql视图创建临时表查询问题? create algorithm=temptable view aj as select sporter.sporter_id,name,grade.itemid,itemname,mark from sporter inner join grade on sporter.sporter_id=grade.sporter_id inner join item on item.itemid=grade.itemid where location='一操

mysql 临时表、内存表和视图

虚拟表,顾名思义,就是实际上并不存在(物理上不存在),但是逻辑上存在的表.这样说很抽象,还是看一些实际的例子吧.在MySQL中,存在三种虚拟表:临时表.内存表和视图. 一.mysql临时表1.什么是临时表临时表是建立在系统临时文件夹中的表,如果使用得当,完全可以像普通表一样进行各种操作. 临时表的数据和表结构都储存在内存之中,退出时,其所占的空间会自动被释放.2.创建临时表(1)定义字段CREATE TEMPORARY TABLE tmp_table (        name VARCHAR(

mysql中解决中文插入问题

1.安装mysql时设置字符集 mysql数据库安装的时候.选择语言为utf8或者GBK,这样在数据库中才可以存放中文. 2.创建表时设置字符集 例如: CREATE TABLE t_department ( sid varchar(32) NOT NULL, pid varchar(32) NOT NULL, thedata varchar(50) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8; 3.在表中更改字段字符集属性 以users表为例:

MySQL临时表的简单用法详解

当工作在非常大的表上时,你可能偶尔需要运行很多查询获得一个大量数据的小的子集,不是对整个表运行这些查询,而是让MySQL每次找出所需的少数记录,将记录选择到一个临时表可能更快些,然后在这些表运行查询. 临时表与内存表 内存表分为2种,但共同点是,重起数据库以后,内存中的数据全部丢失,内存表的功能有部分的限制,有些属性不能像正常表一样使用,所以请大家使用的时候谨慎参照官方文档.下面只是抛砖引玉. 1.临时表:表建在内存里,数据在内存里 2.内存表:表建在磁盘里,数据在内存里 MySQL临时表需要简

mysql-刚学JAVA,求个MySQL使用线程池插入表的例子

问题描述 刚学JAVA,求个MySQL使用线程池插入表的例子 就只对一个表进行插入,只要 insert into table(number) values(?) ,这个操作就行, 因为我想要插入十万条,百万条数据,次数大了用普通的效率太低了,上网查了都说是用线程池可以提高几倍,找了很久都没有具体例子,有的都是看不懂的.求好人给我个简单的例子,谢谢了!对了,祝大家 新年快乐! 解决方案 线程池提高效率是建立在连接上面的,怎么感觉跟你说的不太沾边呢,你的意思是要sql语句,还是创建线程池的代码 解决

mysql 如何创建索引?mysql创建索引

mysql索引作用 在索引列上,除了有序查找之外,数据库利用各种各样的快速定位技术,能够大大提高查询效率.特别是当数据量非常大,查询涉及多个表时,使用索引往往能使查询速度加快成千上万倍. mysql索引创建规则: 1.表的主键.外键必须有索引: 2.数据量超过300的表应该有索引: 3.经常与其他表进行连接的表,在连接字段上应该建立索引 4.经常出现在Where子句中的字段,特别是大表的字段,应该建立索引: 5.索引应该建在选择性高的字段上: 6.索引应该建在小字段上,对于大的文本字段甚至超长字

MySQL用户创建和授权

环境 MySQL 5.1 + 命令行工具 问题 MySQL用户创建和授权 解决 1.以 root用户登录创建新用户 C:\Users\Wentasy>mysql -uroot -p mysql> CREATE USER music IDENTIFIED BY 'music'; 2.以root用户登录创建数据库 create database music default charset utf8; create table tb_user ( tb_user_id int(11) primary

如何用java在mysql里创建表头

问题描述 如何用java在mysql里创建表头 用java在mysql里创建表头,表头是从网页的table标签里获取的属性值.CS萌新求大大解决一下.O(∩_∩)O谢谢 解决方案 create table (字段)http://www.pudn.com/downloads553/sourcecode/java/detail2282083.htmlhttp://blog.csdn.net/rui_dlut/article/details/6758031

在服务器的mysql中创建自定义函数出错

问题描述 在服务器的mysql中创建自定义函数出错 我的一台机器,连接服务器上mysql,创建自定义函数报错[Err] 1418 - This function has none of DETERMINISTIC NO SQL or READS SQL DATA in its declaration and binary logging is enabled (you might want to use the less safe log_bin_trust_function_creators