让我们看两个表,例如表 Post
和User
在Post
表中,列 user_id 是外键。
表 Post
-id 的
-user_id 的
-post 的
表 User
-userid 的
-username 的
如果我们想要获取海报的用户名,我们必须使用join
查询并从User
表中获取。
在Post
表中添加额外列以存储海报的用户名以简化SQL查询会不会更容易。在这种情况下,Post
表将具有 user_id 和用户名列(用户名列是多余的),但这将消除{{1用于捕捉海报用户名的查询。
在join
表格中存储用户名的最佳选择是什么
答案 0 :(得分:1)
创建视图是一种选择:并且ust查询该视图。但是,msql中的视图在性能方面没有像以前那样提供那么多的好处。
可能只是运行连接很好。根据您最终存储的数据量,您可能需要考虑其他方法来提高性能,例如分区表等等 - 但这是针对线下的
答案 1 :(得分:0)
向DB添加冗余数据不是一个好选择。
如果您确实需要简化选择查询,请为该案例创建一个视图。这样,数据就在一个地方,您不需要每次都加入。但简单的加入实际上并不是什么大不了的事。