作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在开发简单的积分系统
表结构:
user_id type points
“type”列是一个 ENUM 字段,有 7 个选项(帖子、评论、attachment_submit 等)。
更新点的简单查询结构:
INSERT INTO points (user_id, type, points) VALUES ('x', 'x', 'x')
ON DUPLICATE KEY UPDATE x='x', x='x', x='x'
我的问题是=我当前的结构在性能方面好吗? 是否会有很多查询(一个用户有 7 个不同的行)?
如果没有,有人可以为我提供当前方法的替代方案吗?
最佳答案
性能考虑因素应基于数据的使用方式。关系数据库在存储数据的方式上非常灵活。这种灵 active 是一件好事,因为不同的应用程序有不同的需求,从而导致不同的数据结构。
您的问题没有提及您正在对数据做什么,只是您想要存储七个单独的值并能够单独更新每个值。对于这个相当狭窄的问题,你的数据结构是相当合理的。
如果我正在开发这样一个系统,我也会考虑存储历史数据。这至少包括值更改时的时间戳。那么所有的数据操作都是插入。
结构的常见替代方案是具有七列的单个表。您没有提供足够的信息来确定这是否是更合理的方法。
关于mysql - 我当前的积分系统性能良好吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23455866/
我是一名优秀的程序员,十分优秀!