MySQL-数据库表结构问题

发布于 2016-12-14 07:26:59 字数 257 浏览 1193 评论 1

我现在有两张表:
user表 用户基本信息 uid(med 8),sex(enum('男', '女')),age (tinyint 2)
com表 简评 comid(med 8), uid(med 8), con(varchar 240)

我现在有个需要(其实有很多类似这样的需求),是统计出用户的简评个数.
问题是说我是在user表添加一个字段comnum来记录个数,还是每次都通过查询com表来统计个数,这两种方式哪一种好,或者您有更好的建议?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

瑾兮 2017-07-04 14:19:03

可以对比 普通视图和物化视图 的优缺点(当然不完全一样).

"在user表中添加一个字段comnum", 优点是 查询速度快, 缺点是: 额外的物理存储空间; 每次com表更新都需要更新对应的 user表的comnum字段(自己逻辑控制? 触发器?).
"每次都通过查询com表来统计个数": 需在comm表的uid上建立索引, 每次只需查询索引即可完成统计. 优点是不需要自己做维护. 缺点是: 索引需要的存储空间更多; 因为一个用户的comment可能很多, 查询时间更长.

高性能MySQL第三章里推荐了 Mysql的物化视图的开源实现Flexviews(http://code.google.com/p/flexviews/). 楼主不妨试一下.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文