hyz23je 2022-06-16 15:54 采纳率: 93.3%
浏览 20
已结题

mysql中多表视图性能疑惑

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

  • 写回答

1条回答 默认 最新

  • 葛芮拉 2022-06-16 16:42
    关注

    当然不建议这么做,随着功能的增多,性能是一方面,每次增加功能都要去重新修改视图;
    通常的办法是在功能表里扩展个字段去记录创建时间,楼主没有选择这种方案可能是由于各种原因不能改程序,那可以考虑下在数据库中写个定时任务,从其他表同步时间,这种方式需要考虑下数据实时性是否满足用户需求

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

    报告相同问题?

    问题事件

    • 系统已结题 6月25日
    • 已采纳回答 6月17日
    • 创建了问题 6月16日

    悬赏问题

    • ¥15 关于#c++#的问题:在A和B类中应该怎么定义复制构造函数来避开unordered_set复制构造的问题(相关搜索:头文件)
    • ¥15 MICE包多重插补后数据集汇总导出
    • ¥15 一道算法分析问题(关于3-MSAT)
    • ¥15 C++ FLUENT 化学反应速率 编写困难
    • ¥15 Python嵌套交叉验证
    • ¥15 linuxkit+elasticsearch
    • ¥15 兄得萌6.13do题😭😭大一小东西的work
    • ¥15 投不到原始数据,gdal投影代码
    • ¥20 卷积混响的代码帮写。。
    • ¥88 借助代码处理雷达影像,识别任意区域洪水前后的被淹没区域,并可视化展示。