是否可以使用MySQL的模型/模式进行复杂查询?

时间:2012-08-30 07:27:57

标签: mysql database-design

复杂查询我的意思是你必须使用至少2个连接的查询。让我们说我已经构建了数据库的模式/模型。现在提供users.user_id = 5我要求logins.lastlogingroups.groupnamehistory.user_weight。我不会编写任何连接SQL语句,所有这些语句都将由数据库的模式/模型在后台加入。是否可以使用MySQL?

2 个答案:

答案 0 :(得分:2)

如果你不喜欢“观点”这个想法 - 哪个,顺便说一下,理想 - 你总是可以通过这样做来模仿所提到的Oracle-materialized views Branko:

在您加入的每个表格上INSERTDELETEUPDATE和{{1} {1}};这将更新名为users的新第5个表(示例)

所以你将这个新的logins表用于上面想要的查询。它可以减少扫描的行数而不是实际视图,但是每当原始4个表中的任何数据发生更改时,现在都会产生开销。根据您使用这个新lgh表与更新其他4个表的频率,您可能会看到一些性能改进。

<强>声明:

  • 我不宽恕这种解决方法,这只是你问题的另一个建议。
  • 您应该考虑在原始的4个表中添加更多索引,甚至可以考虑在该连接查询中使用的每个列。
  • 这可能类似于“缓存”......它并不完全。

答案 1 :(得分:1)