收藏本站腾讯微博新浪微博

经典论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

蓝色理想 最新研发动态 网站开通淘帖功能 - 蓝色理想插件 论坛内容导读一页看论坛 - 给官方提建议

论坛活动及任务 地图和邮件任务 请多用悬赏提问 热夏来袭,选一款蓝色理想的个性T恤吧!

手机上论坛,使用APP获得更好体验 急需前端攻城狮,获得内部推荐机会 论坛开通淘帖功能,收藏终于可以分类了!

搜索
查看: 3113|回复: 4

[php] 做了个考勤系统,每天的考勤用什么方法实现?我是用了for 中的select,很慢

[复制链接]
发表于 2017-9-7 10:29:51 | 显示全部楼层 |阅读模式
为了方便显示公司考勤,从网上找资料现学现卖,做了个原始的显示考勤的页面,最基本的功能——读取考勤数据库中记录,显示某月的考勤报表。现在显示是没问题,就是代码效率太低。

我大体说下:
for(i=1;i<=当月天数;i++)
然后在for中select数据库中的  某月i日的 考勤并显示,不到3万条考勤记录,非常慢,如果不修改PHP参数系统都超时。

查询资料说是尽量不要for中select数据库,但是自己琢磨了几天脑子转不动了也没找到什么好方法。

请问各位大神有没有什么好的思路点拨下
2017-09-07_102453.jpg
发表于 2017-9-13 08:35:41 | 显示全部楼层
我记得一句话:不要在for循环内执行sql语句
回复 支持 反对

使用道具 举报

发表于 2017-9-13 08:40:56 | 显示全部楼层
可以做一个定时器,把每天的的数据统计一下,定在凌晨2点左右,不影响日常运行。
每天统计完的数据单独存储或者直接存json。
需要做汇总的时候把数据取出来累加一下就可以了。
毕竟才3万条数据,我之前处理的数据一天就过万条,也是这么做的。
回复 支持 反对

使用道具 举报

发表于 2017-9-18 09:42:42 | 显示全部楼层
感觉好复杂啊
回复 支持 反对

使用道具 举报

发表于 2017-9-28 17:15:50 | 显示全部楼层
不要在for循环内执行sql语句 2喽说的很对!我以前的师傅告诉我的!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|小黑屋|Archiver|手机版|blueidea.com ( 湘ICP备12001430号 )  

GMT+8, 2020-9-30 23:46 , Processed in 0.124686 second(s), 9 queries , Gzip On, Memcache On.

Powered by Discuz! X3.2 Licensed

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表