mysql - 怎么生成这个sql表?

查看:67
本文介绍了mysql - 怎么生成这个sql表?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

如图,要生成这个sql表,从5点开始到23点,间隔15分钟。

怎么生成呢?

解决方案

用PHP

$start = strtotime('20140227050000');
$end = strtotime('20140227230000');
$step = strtotime('1970-01-01 08:30:00');
$data = array();
while (($start+=$step) <= $end) {
    $data[] = array(
        's'=>date('Y-m-d H:i:s',($start-strtotime('1970-01-01 08:15:00'))),
        'e'=>date('Y-m-d H:i:s',$start)
    );
}
echo '<pre>';
var_dump($data);

将data数据插入到sql表即可

再来个MYSQL的

-- 删除原有表
DROP TABLE IF EXISTS `t`;
-- 创建数据表
CREATE TABLE IF NOT EXISTS `t` (
    `s` varchar(255),
    `e` varchar(255)
);
-- 创建存储
create procedure protest()
begin
declare s int;
declare t int;
declare e int;
set s=UNIX_TIMESTAMP('20140227050000');
set t=900;
set e=UNIX_TIMESTAMP('20140227230000');
while s<e do
        set s=s+t;
    insert into t(`s`,`e`) values(FROM_UNIXTIME(s),FROM_UNIXTIME(s+t));
       set s=s+t;
end while;
end;
-- 调用存储
call protest();
-- 删除存储
drop procedure protest;

这篇关于mysql - 怎么生成这个sql表?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆