• 同表复制数据,让其日期增加

    1. 算出总共的天数,用group by 分类后的. space
    2. 提前求出第一块数据的总和 sum = select count(*) from tbl_event;
    3. 固定操作第一块的话,用limit 限制, select * from tbl_event limit 0,sum;
    4. 把原始数据当成一整块.移动一次后成两块. (st_date,interval space day) 第一次移动
    5. 第二次移动的话,还是操作第一块,但是让interval数据+ (stdate,interval space*2 day) changeDate(in multiple int) 这个参数是指,要把现有数据的日期增加几倍,比如现在数据是2条,multiple=1执行结果是4条数据,而且数据stdate 是递增的
  • 代码实现


    DELIMITER $
    DROP PROCEDURE IF EXISTS changeDate$
    CREATE PROCEDURE changeDate (IN multiple int)
    BEGIN
    DECLARE i int DEFAULT 1;
    DECLARE _space int DEFAULT 1;
    DECLARE _sum int DEFAULT 1;
    SELECT
    COUNT(1) INTO _space
    FROM (SELECT
    te.st_date
    FROM A te
    GROUP BY te.st_date) temp;
    SELECT
    COUNT(*) INTO _sum
    FROM A te;
    IF multiple > 0 THEN
    WHILE i <= multiple DO
    INSERT INTO A (
    st_date
    )
    SELECT DATE_ADD(st_date, INTERVAL _space * i DAY) AS st_date, FROM A LIMIT 0, _sum;
    SET i := i + 1;
    END WHILE;
    END IF;
    END$
    DELIMITER ;

同表复制修改日期的procedure的更多相关文章

  1. HIVE获取表的大小和修改日期

    ### 获取表的大小 hdfs dfs -du /user/hive/warehouse/database_name.db/ > 360_du ### 获取表的修改日期 hdfs dfs -ls ...

  2. mysql表复制和修改部分字段

    今天在工作中,需要造大量的加数据,1000多条数据如果都是手工输入的话,那么我今天不要干别的了,就造吧! 当时手工操作重复的事情,对程序员来说,是一件很丢人的事情,所以就上网查了一下,需要用到两个知识 ...

  3. SQL语句增删改字段、表、修改默认值

    收集转载: 1.修改字段,默认值 .修改字段默认值 alter table 表名 drop constraint 约束名字 ------说明:删除表的字段的原有约束 alter table 表名 ad ...

  4. SQL语句(三)数据表的修改

    数据表的修改 1. 创建实验表people people CREATE TABLE people ( name ), gender ), birthday ) ) 2.修改表 ALTER TABLE ...

  5. 第17课-数据库开发及ado.net 聚合函数,模糊查询like,通配符.空值处理.order by排序.分组group by-having.类型转换-cast,Convert.union all; Select 列 into 新表;字符串函数;日期函数

    第17课-数据库开发及ado.net 聚合函数,模糊查询like,通配符.空值处理.order by排序.分组group by-having.类型转换-cast,Convert.union all;  ...

  6. kettle实现数据库迁移----多表复制向导

    kettle实现数据库迁移----多表复制向导 需求: 做数据仓库时,需要将业务系统CRM抽取到数据仓库的缓冲层,业务系统使用的是SqlServer数据库,数据仓库的缓冲层使用的是mysql数据库,为 ...

  7. MySQL中将数据库表名修改成大写的存储过程

    原文:MySQL中将数据库表名修改成大写的存储过程 MySQL中将数据库表名修改成大写的存储过程 创建存储过程的代码: DROP PROCEDURE IF EXISTS uppercaseTablen ...

  8. SELECT INTO 和 INSERT INTO SELECT 两种表复制语句

    Insert是T-sql中常用语句,Insert INTO table(field1,field2,...) values(value1,value2,...)这种形式的在应用程序开发中必不可少.但我 ...

  9. Oracle数据库表复制语句

    Insert是T-sql中常用语句,Insert INTO table(field1,field2,...) values(value1,value2,...)这种形式的在应用程序开发中必不可少.但我 ...

随机推荐

  1. JavaScript数组类型

    特点 动态长度 一个数组里面的元素可以是不同类型 数组的length属性不是只读属性,可通过length延长数组也可以删减数组的长度 定义数组两种方法 //方法一: var names = new A ...

  2. set集合(set是一个无序且不重复的元素集合)

    功能: 一.可以去掉列表,元组中的重复项 二.可以求交集,合集,差集等 def add(self, *args, **kwargs): """ 添加 "&quo ...

  3. jdbc.properties各种数据库连接配置

    # HSQLDB  #jdbc.driverClassName=org.hsqldb.jdbcDriver #jdbc.url=jdbc:hsqldb:hsql://localhost:9001/bo ...

  4. Web开发中20个很有用的CSS库

    来源: 微信公众号文章 在过去的几年中,CSS已经成为一大部分开发者和设计者的最爱,因为它提供了一系列功能和特性.每个月都有无数个围绕CSS的工具被开发者发布以简化WEB开发.像CSS库,框架,应用这 ...

  5. 不完全解决Android微信HTML5 播放视频的问题(不显示控制条,可交互)

    首先你需要知道以下内容: http://ad.weixin.qq.com/learn/2-3-3--%E9%80%9A%E7%94%A8%E5%BA%93 这是微信为广告商开放的API,我一直认为只有 ...

  6. 利用CSS制作三角形

    在我们看到类似于这样的图片时: 我们一般都会想,哎,这还不简单,用一张图片就可以了. 的确,用图片可以很轻松地做到.不过我们接下来要讨论的是: 如何用css也作出这样的效果.   首先,我们来定义一个 ...

  7. Linux 常见问题解决办法

    1.用户切换后显示 -bash-4.1 $ 表示该用户下的配置文件缺失,切换到该用户下(-bash-4.1),使用命令查(pwd)看用户所在位置.如 /home/gpadmin. 使用 cp -a / ...

  8. Greenplum第三方工具链接

    在master节点的$MASTER_DATA_DIRECTORY/pg_hba.conf中添加新客户端服务器信息 #add host     all         gpadmin         0 ...

  9. [Java] SoapUI使用Java获取各时间日期方法

    import java.util.*; import java.text.SimpleDateFormat; // current date String dateNew = today() // t ...

  10. CCNA网络基础(一)

    现在我们使用这一个图来讲解网络的基础知识:     现在只看右边那个图,也就是两台主机和一个交换机       PC1 的配置是      IP 172.16.20.2/24   网关没有配     ...