扫码关注官方订阅号
如何统计今日发表的文章数?
人生最曼妙的风景,竟是内心的淡定与从容!
假设你是在一个数据库保存一个博文表,也不打算新增一个统计表,那么直接写SQL语句统计,Select count(*) FROM blog WHERE pub_date='2014-12-26'; 优点:简单,直接 缺点:每次这样统计,消耗数据资源 -> 数据量大 -> 慢; 分库场景基本不可用
Select count(*) FROM blog WHERE pub_date='2014-12-26';
假设你打算新增统计表,比如叫stat,以日期为主键,还有一个字段叫blog_count,每次新增就加,每次删除就减 优点:查询速度杠杠的, 缺点:维护多了一张表,业务逻辑复杂了
blog_count
以上是单纯使用数据库的方式,还可以把这类统计数据存Redis,加快存取速度 优点:性能更好 缺点:引入新的服务,增加维护成本
如果文章表有时间字段的话可以使用: SELECT count(*) as today_count FROM 表名 WHERE TO_DAYS(时间字段名) =TO_DAYS(now());
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
假设你是在一个数据库保存一个博文表,也不打算新增一个统计表,那么直接写SQL语句统计,
Select count(*) FROM blog WHERE pub_date='2014-12-26';优点:简单,直接
缺点:每次这样统计,消耗数据资源 -> 数据量大 -> 慢; 分库场景基本不可用
假设你打算新增统计表,比如叫stat,以日期为主键,还有一个字段叫
blog_count,每次新增就加,每次删除就减优点:查询速度杠杠的,
缺点:维护多了一张表,业务逻辑复杂了
以上是单纯使用数据库的方式,还可以把这类统计数据存Redis,加快存取速度
优点:性能更好
缺点:引入新的服务,增加维护成本
如果文章表有时间字段的话可以使用:
SELECT count(*) as today_count FROM 表名 WHERE TO_DAYS(时间字段名) =TO_DAYS(now());