Defining Stored Programs
ok
DROP PROCEDURE
IF EXISTS truncate_insert_rank_month;
DELIMITER /w/ CREATE PROCEDURE truncate_insert_rank_month ()
BEGIN SET @w = 10 ; TRUNCATE rank_month ;
WHILE @w < 110 DO
INSERT INTO rank_month (
fk_country,
fk_categoryid,
topx,
history_year,
history_month,
coin_sum,
amount_sum
) SELECT
country,
categoryid,
@w,
DATE_FORMAT(grab_date, '%Y'),
DATE_FORMAT(grab_date, '%M'),
SUM(grab_coin),
SUM(grab_amount)
FROM
grab_rank
WHERE
grab_amount_rank < (@w + 1)
GROUP BY
country,
categoryid,
DATE_FORMAT(grab_date, '%Y'),
DATE_FORMAT(grab_date, '%M') ;
SET @w = @w + 10 ;
END
WHILE ;
END/w/
DELIMITER;
CALL truncate_insert_rank_month;
ok
DROP PROCEDURE
IF EXISTS truncate_insert_rank_month;
DELIMITER /w/ CREATE PROCEDURE truncate_insert_rank_month ()
BEGIN
TRUNCATE rank_month ;
SET @w = 10 ;
WHILE @w < 110 DO
INSERT INTO rank_month (
fk_country,
fk_categoryid,
topx,
history_year,
history_month,
coin_sum,
amount_sum
) SELECT
country,
categoryid,
@w,
DATE_FORMAT(grab_date, '%Y'),
DATE_FORMAT(grab_date, '%M'),
SUM(grab_coin),
SUM(grab_amount)
FROM
grab_rank
WHERE
grab_amount_rank < (@w + 1)
GROUP BY
country,
categoryid,
DATE_FORMAT(grab_date, '%Y'),
DATE_FORMAT(grab_date, '%M') ;
SET @w = @w + 10 ;
END
WHILE ;
END/w/
DELIMITER;
CALL truncate_insert_rank_month;
DROP PROCEDURE
IF EXISTS truncate_insert_rank_month;
DELIMITER /w/ CREATE PROCEDURE truncate_insert_rank_month ()
BEGIN
TRUNCATE rank_month ;
DECLARE w INT ;
SET w = 10 ;
WHILE w < 110 DO
INSERT INTO rank_month (
fk_country,
fk_categoryid,
topx,
history_year,
history_month,
coin_sum,
amount_sum
) SELECT
country,
categoryid,
w,
DATE_FORMAT(grab_date, '%Y'),
DATE_FORMAT(grab_date, '%M'),
SUM(grab_coin),
SUM(grab_amount)
FROM
grab_rank
WHERE
grab_amount_rank < (w + 1)
GROUP BY
country,
categoryid,
DATE_FORMAT(grab_date, '%Y'),
DATE_FORMAT(grab_date, '%M') ;
SET w = w + 10 ;
END
WHILE ;
END/w/
DELIMITER;
CALL truncate_insert_rank_month;
[Err] 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'DECLARE w INT ;
SET w = 10 ;
WHILE w < 110 DO
INSERT INTO rank_month (
fk' at line 4
http://dev.mysql.com/doc/refman/5.7/en/stored-programs-defining.html
DROP PROCEDURE
IF EXISTS truncate_insert_rank_month;
DELIMITER /w/ CREATE PROCEDURE truncate_insert_rank_month ()
BEGIN DECLARE w INT ; TRUNCATE rank_month ;
SET w = 10 ;
WHILE w < 110 DO
INSERT INTO rank_month (
fk_country,
fk_categoryid,
topx,
history_year,
history_month,
coin_sum,
amount_sum
) SELECT
country,
categoryid,
w,
DATE_FORMAT(grab_date, '%Y'),
DATE_FORMAT(grab_date, '%M'),
SUM(grab_coin),
SUM(grab_amount)
FROM
grab_rank
WHERE
grab_amount_rank < (w + 1)
GROUP BY
country,
categoryid,
DATE_FORMAT(grab_date, '%Y'),
DATE_FORMAT(grab_date, '%M') ;
SET w = w + 10 ;
END
WHILE ;
END/w/
DELIMITER;
CALL truncate_insert_rank_month; DROP PROCEDURE
IF EXISTS truncate_insert_rank_week;
DELIMITER /w/ CREATE PROCEDURE truncate_insert_rank_week ()
BEGIN DECLARE w INT ; TRUNCATE rank_week ;
SET w = 10 ;
WHILE w < 110 DO
INSERT INTO rank_week (
fk_country,
fk_categoryid,
topx,
history_year,
history_week,
coin_sum,
amount_sum
) SELECT
country,
categoryid,
w,
DATE_FORMAT(grab_date, '%Y'),
DATE_FORMAT(grab_date, '%V'),
SUM(grab_coin),
SUM(grab_amount)
FROM
grab_rank
WHERE
grab_amount_rank < (w + 1)
GROUP BY
country,
categoryid,
DATE_FORMAT(grab_date, '%Y'),
DATE_FORMAT(grab_date, '%V') ;
SET w = w + 10 ;
END
WHILE ;
END/w/
DELIMITER;
CALL truncate_insert_rank_week; DROP PROCEDURE
IF EXISTS truncate_insert_rank_all;
DELIMITER /w/ CREATE PROCEDURE truncate_insert_rank_all ()
BEGIN DECLARE w INT ; TRUNCATE rank_all ;
SET w = 10 ;
WHILE w < 110 DO
INSERT INTO rank_all (
fk_country,
fk_categoryid,
topx,
coin_sum,
amount_sum
) SELECT
country,
categoryid,
w,
SUM(grab_coin),
SUM(grab_amount)
FROM
grab_rank
WHERE
grab_amount_rank < (w + 1)
GROUP BY
country,
categoryid ;
SET w = w + 10 ;
END
WHILE ;
END/w/
DELIMITER ; CALL truncate_insert_rank_all;
Defining Stored Programs的更多相关文章
- Using Stored Programs with MySQLdb
http://flylib.com/books/en/1.142.1.125/1/ Using Stored Programs with MySQLdb The techniques for call ...
- MySQL之mysql命令使用详解
MySQL Name mysql - the MySQL command-line tool Synopsis mysql [options] db_name Description mysql is ...
- An Introduction to Stored Procedures in MySQL 5
https://code.tutsplus.com/articles/an-introduction-to-stored-procedures-in-mysql-5--net-17843 MySQL ...
- Migrating Oracle on UNIX to SQL Server on Windows
Appendices Published: April 27, 2005 On This Page Appendix A: SQL Server for Oracle Professionals Ap ...
- MySQL权限系统(二). MySQL提供的特权 Privileges Provided by MySQL
MySQL provides privileges that apply in different contexts and at different levels of operation: Adm ...
- MySQL 之 Metadata Locking 研究
MySQL5.5 中引入了 metadata lock. 顾名思义,metadata lock 不是为了保护表中的数据的,而是保护 database objects(元数据)的.包括表结构.schem ...
- My Sql 中要Alter Table的同学请注意!!!
首先我建议你在对MySQL表做DDL操作时: 1 执行 show processlist 查看,要操作的表(数据库对象)是否处于锁状态 if("未锁定") { 执行DDL语句 }e ...
- Raising Error Conditions with MySQL SIGNAL / RESIGNAL Statements
http://www.mysqltutorial.org/mysql-signal-resignal/ Summary: in this tutorial, you will learn how to ...
- [MySQL Reference Manual] 6 安全性
6. 安全性 在Mysql安装配置时要考虑安全性的影响,以下几点: Ÿ 常规因素影响安全性 Ÿ 程序自身安全性 Ÿ 数据库内部的安全性,即,访问控制 Ÿ 网络安全性和系统安全性 Ÿ ...
随机推荐
- kali 安装火狐
转自:http://www.kali.org.cn/thread-21271-1-1.html 安装火狐浏览器 打开终端 第一步:apt-get remove iceweasel 第二步: echo ...
- 神奇的HTML5离线存储(应用程序缓存)
声明:本文为原创文章,如需转载,请注明来源并保留原文链接前端小尚,谢谢! 前言 使用 HTML5,通过创建 cache manifest 文件,可以轻松地创建 web 应用的离线版本. HTML5引入 ...
- XmlBeanFactory的Bean注册
Spring将bean从配置文件到加载到内存中的全过程: BeanFactory bf = new XmlBeanFactory(new ClassPathResource("beanFac ...
- MAXIMO系统 java webservice 中PDA移动应用系统开发
MAXIMO系统 java webservice 中PDA移动应用系统开发 平时经常用的wince PDA手持设备调用c#写的webservice, 当然PDA也可以调用java webservic ...
- POJ1523 SPF(割点模板)
题目求一个无向图的所有割点,并输出删除这些割点后形成几个连通分量.用Tarjan算法: 一遍DFS,构造出一颗深度优先生成树,在原无向图中边分成了两种:树边(生成树上的边)和反祖边(非生成树上的边). ...
- Js作用域与作用域链详解
一直对Js的作用域有点迷糊,今天偶然读到Javascript权威指南,立马被吸引住了,写的真不错.我看的是第六版本,相当的厚,大概1000多页,Js博大精深,要熟悉精通需要大毅力大功夫. 一:函数作用 ...
- 【BZOJ】1082: [SCOI2005]栅栏(二分+dfs)
http://www.lydsy.com/JudgeOnline/problem.php?id=1082 题意:n个给出木板,m个给出木板.可以将那m个木板锯成泥想要的长度.问最大能锯成多少个给出的n ...
- 【NOIP2003】传染病控制(-贪心/dfs)
我自己yy了个贪心算法,在某oj 0msAC~.然后去wikioi提交,呵呵,原来是之前oj的数据太弱给我水过了,我晕. 我之前的想法是在这棵树上维护sum,然后按时间来割边,每一时刻割已经感染的人所 ...
- 用LinqPad查看Nhibernate生成的sql语句
使用Nhibernate开发一般都要对Nhibernate生成的sql语句进行查看及分析,查看Nhibernate生成的sql语句,可以使用NHProfiler和log4net.但NHProfiler ...
- Quartz与Spring整合进行热部署的实现(一)
先来几张实现图 任务管理页 新建任务管理.目前实现叫简单的需求...若各位同学要实现复杂的设计...quartz都有提供强大的支持.小弟目前的需求做到这已经够用了. 接下来.我们如何实现quartz的 ...