首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >性能度量Mysql视图与表的联合

性能度量Mysql视图与表的联合
EN

Stack Overflow用户
提问于 2013-10-31 09:16:08
回答 1查看 955关注 0票数 0

我试着制定一个数据库方案。我只是想知道哪种方法比其他方法更好。我有两种方法来完成我的数据库中的搜索任务。条件如下:我有多个表名为table1,table2..tablen具有相同的结构,表示不同的位置。

我的工作方式如下:

  1. 使用my TABLESUNION并使用查询(如:Select * from my_view where my_condition;)创建视图。
  2. 通过使用简单的UNION运算符并使用如下所示的查询: select * from table1 where my_condition UNION select * from table2 where my_condition UNION ... .. select * from tablen where my_condition

所以,我的问题是,我想要一个更快的解决方案,请帮助我在视图和UNION.If之间进行选择,您还有其他的解决方案,比如mysql集群、、可伸缩性告诉我。

EN

回答 1

Stack Overflow用户

发布于 2013-10-31 09:30:51

View只是一个saved Named SELECT statement。当您调用一个视图时,它只是执行其定义中的SELECT语句,视图没有这样的性能好处,但是有一些安全性和代码简单性的好处。除非您创建了Indexed View,这可以提高视图的性能,而且还可以从在视图上创建的索引中获益。警告索引视图有很长的限制列表。

联合运算符垂直组合来自两个或多个select查询的结果集。如果您想要更好的性能,则需要查看表中用于查询的可用索引。

仔细检查查询的选择计划将是在您的情况下最好的起点,因为它会让您知道SQL SERVER要获得所需的结果集必须经过哪些步骤。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19702435

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档