mysql按日期分表应该怎么查询?
怪我咯
怪我咯 2017-04-17 12:00:45
[MySQL讨论组]

数据库设计的是每隔15天分一个表
Like:
log_2014-12-01_2014-12-15
log_2014-12-16_2014-12-31
log_2015-01-01_2015-01-16
log_2015-01-17_2015-02-01
log_2015-02-02_2015-02-17
log_2015-02-18_2015-03-05
log_2015-03-06_2015-03-21
log_2015-03-22_2015-04-06
...

那么用PHP+mysql查询今天的数据(2015-03-31),怎么获取对应的表?
(我知道首先是应该获取今天的日期,但是不知道怎么通过日期来找对应的表...)

感谢各位,问题已解决。每次创建表的时候,写入一个json文件,包含一个值nowtablename,然后PHP执行的时候读取这个json文件中的nowtablename就行了。

怪我咯
怪我咯

走同样的路,发现不同的人生

全部回复(4)
高洛峰

start: 2015-03-31 - (2015-03-31 - 2014-12-01) % 15

PHP中文网

你建表的时候有一定规则的吧,比如一个建表的类,里面包含了建表的方法,获取当前日期所在表名的方法。调用这个类的方法就知道了。

伊谢尔伦

首先你分表的规则肯定是有一定规则的,你可以根据你建表的规则来获取Log的区间,看insert插入表的规则,应该就是你查询时的规则了

阿神

我觉得可以执行 show tables like 'log_%'; 取得第一张表的开始日期,然后在 PHP 里根据它把当前日期对应的表推算出来。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号