【原创】mysql while do…
来源:互联网 发布:开淘宝店怎么代销不了 编辑:程序博客网 时间:2024/06/15 07:52
有一个需求,将某个时间段按照指定时间长度分割成小的时间片段,本来吧要用python写的,又觉得python时间处理模块麻烦了点,所幸用SQL试试吧,才发现没有办法分行,不能分就不能分吧,就当练习一下sql~~
declare timelongtext;#最后显示的的时间字符串 declare n_timevarchar(25);#不断更新的时间 declare iint;#标示第多少个小时 set time =date_sub(s_time,interval 0 hour);#初始化结果为开始日期的时间类型 set n_time =date_sub(s_time,interval 0 hour);#初始化当前时间为开始日期的时间类型 set s_time =date_sub(s_time,interval 0 hour);#初始化开始日期为时间类型 set e_time =date_sub(e_time,interval 0 hour);#初始化结束时间为时间类型 set i =0;#初始化当前循环第0次,第0个小时 while n_time >=s_time and n_time <= e_time do begin #操作 set i =i +1;#循环+1次,标识要延后一个小时 #selectdate_sub(s_time,interval i hour); set n_time= date_sub(s_time,interval -ihour);#设置当前时间为开始时间延后一个小时,注意是"-i" SETtime=concat(time,'|',date_sub(s_time,interval -ihour));#用"|"符号将前一个小时和当前时间拼接起来。 #selecttime,n_time; end; end while; selecttime;#结束循环后,打印结果
比如将2013-11-11 01:00:00 --- 2013-11-1103:00:00 分割如下:
2013-11-11 01:00:00--- 2013-11-11 02:00:00
2013-11-11 02:00:00--- 2013-11-11 03:00:00
本来想用for循环的,就用while do吧。
drop procedure ff;
DELIMITER $$
CREATE PROCEDURE `ff`(s_time varchar(10),e_time varchar(10)charset 'utf8')
BEGIN
END$$
call ff('2012-11-11','2012-11-12');
2012-11-11 00:00:00|2012-11-11 01:00:00|2012-11-1102:00:00|2012-11-11 03:00:00|2012-11-11 04:00:00|2012-11-1105:00:00|2012-11-11 06:00:00|2012-11-11 07:00:00|2012-11-1108:00:00|2012-11-11 09:00:00|2012-11-11 10:00:00|2012-11-1111:00:00|2012-11-11 12:00:00|2012-11-11 13:00:00|2012-11-1114:00:00|2012-11-11 15:00:00|2012-11-11 16:00:00|2012-11-1117:00:00|2012-11-11 18:00:00|2012-11-11 19:00:00|2012-11-1120:00:00|2012-11-11 21:00:00|2012-11-11 22:00:00|2012-11-1123:00:00|2012-11-12 00:00:00
其实想了想,应该是可以的,sql中设置自增长...
暂且这样吧,参数列表最好加上时间长度,以秒为单位最合适,这样更灵活。
0 0
- 【原创】mysql while do…
- 【原创】Mysql in mysql…
- 【原创】 linux-mysql …
- 【原创】 linux-mysql E…
- 【原创】 linux-mysql p…
- 【原创】 Window7 mysql…
- 【原创】Mysql ERROR 17…
- 【原创】Mysql ERROR 14…
- 【原创】mysql replace …
- 【原创】mysql update t…
- 【原创】python mysql C…
- do while(0)作用
- 【原创】 linux mysql&n…
- 【原创】mysql-python安装 dj…
- 【原创】 linux-python-MySQL…
- 【原创】mysql 触发器trigger…
- 【原创】Mysql Waring/Error&…
- 【原创】mysql InnoDB、MyIsa…
- 解决方案 ERROR: ORA-01033: ORACLE initialization or shutdown in progress
- python 学习系列(3) 读取并显示图片的两种方法
- 【原创】拯救了一次我的破手机
- 【原创】删除Android预装软件包,…
- 【原创】linux ubuntu12.04&n…
- 【原创】mysql while do…
- 适用小白:为什么要用Jupyter?以及,如何在Linux的Ubuntu 14.04LTS上安装和启动Jupyter Notebook
- 【原创】python 简繁体转换
- 【原创】mysql 正则匹配中文&…
- 【转载】Python 获取网卡设置…
- 【原创】linux使用终端命令执行pyt…
- 【原创】linux ubuntu12.04&n…
- 【原创】linux ubuntu12.04&n…
- 为什么JVM需要 "垃圾回收器" ?