是这样的,有一个项目,数据库用的是mysql.然后项目中有很多个给用户的功能,比如说,用户可以创建一个抽奖功能,也可以创建一个刮刮卡功能,等等,每个功能在数据库中都使用一张表作为对应。
现在考虑到的问题是这样的:
现在只有抽奖和刮刮卡两个功能,所以当我们要在查某个用户创建了什么功能,创建时间是什么时候,我们只要对用户记录表和抽奖功能表或者用户记录表和刮刮卡功能表进行关联查询就可以了。但是之后还要再加功能比如加转盘功能之类,并且会越来越多。大概会有50多个吧
而我们要的就是想知道用户创建了什么功能,什么时候创建的这点数据而已(创建功能的时间保存在对应的功能表中)。所以我就想能不能弄成一个视图,把用户记录表和对应的功能表的时间创建放到一张视图里面去,这样以后就直接修改一下语句让视图显示新加进来的功能就可以了。对了,创建的视图只作查询用,不做插入和更新数据和删除数据。但是考虑到会关联那么多表在视图中,会不会有性能问题?

mysql中多表视图性能疑惑
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
1条回答 默认 最新
- 葛芮拉 2022-06-16 16:42关注
当然不建议这么做,随着功能的增多,性能是一方面,每次增加功能都要去重新修改视图;
通常的办法是在功能表里扩展个字段去记录创建时间,楼主没有选择这种方案可能是由于各种原因不能改程序,那可以考虑下在数据库中写个定时任务,从其他表同步时间,这种方式需要考虑下数据实时性是否满足用户需求本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报