MySql 查看性能 [关闭]

2024-01-12

如果您走上使用视图的道路,如何才能确保良好的性能?

或者最好不要首先使用视图,而只是将等效项合并到您的 select 语句中?


这取决于。

这完全取决于您通过视图看到的内容。但很可能会减少您的努力并提供更高的性能。当 SQL 语句引用非索引视图时,解析器和查询优化器会分析 SQL 语句和视图的源,然后将它们解析为单个执行计划。 SQL 语句没有一个计划,视图也没有单独的计划。

视图未编译。它是由其他表组成的虚拟表。当您创建它时,它并不驻留在您服务器上的某个位置。构成视图的基础查询会受到查询优化器相同性能提升或影响的影响。我从未测试过视图及其底层查询的性能,但我认为性能可能会略有不同。如果数据相对静态,则可以在索引视图上获得更好的性能。这可能就是您所想的“编译”。

视图的优点:

  1. 查看数据而不将数据存储到对象中。
  2. 限制表的视图,即可以隐藏表中的某些列。
  3. 连接两个或多个表并将其作为一个对象显示给用户。
  4. 限制对表的访问,以便任何人都无法将行插入表中。

请参阅这些有用的链接:

  1. VIEW 与 SQL 语句的性能 https://stackoverflow.com/questions/1867896/performance-of-view-vs-sql-statement
  2. 视图比简单查询更快吗? https://stackoverflow.com/questions/439056/is-a-view-faster-than-a-simple-query
  3. Mysql VIEWS 与 PHP 查询 https://stackoverflow.com/questions/4426919/mysql-views-vs-php-query
  4. MySql 视图动态且高效吗? https://stackoverflow.com/questions/4886874/are-mysql-views-dynamic-and-efficient
  5. 物化视图与表:优点是什么? https://stackoverflow.com/questions/4218657/materialized-view-vs-tables-what-are-the-advantages
  6. 通过视图查询是否比直接执行 SQL 慢? https://stackoverflow.com/questions/4630633/is-querying-over-a-view-slower-than-executing-sql-directly
  7. TEMPTABLE 视图性能问题的解决方法 http://www.mysqlperformanceblog.com/2010/05/19/a-workaround-for-the-performance-problems-of-temptable-views/
  8. 通过在 SQL Server 中使用索引视图查看性能提升 http://www.techrepublic.com/article/see-performance-gains-by-using-indexed-views-in-sql-server/6160148罢工>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MySql 查看性能 [关闭] 的相关文章

  • 如何删除 MySQL 数据库?

    你可能从我的上一个问题中注意到一个问题引发了更多的问题 在 MySQL 监视器中阅读 MySQL 手册 https stackoverflow com questions 1081399 我的数据库现在无法使用 部分原因是我想破坏东西并且无
  • MySQL - 从数字列表中选择在表的 id 字段中没有对应项的数字

    我有一个数字列表 例如 2 4 5 6 7 我有一个表 foos 带有 foos ID 包括 1 2 3 4 8 9 我想获取我的号码列表 并在我的表的 ID 字段中找到那些没有对应项的号码 实现此目的的一种方法是创建一个表格栏 在 ID
  • JavaScript - 无需布尔值即可运行一次

    有没有办法只运行一段JavaScript代码ONCE 而不使用布尔标志变量来记住它是否已经运行过 具体来说not就像是 var alreadyRan false function runOnce if alreadyRan return a
  • MySQL JOIN 滥用?情况会变得有多糟糕?

    我读了很多关于关系数据库的文章 在每个 SELECT 上使用许多 JOIN 语句 但是 我一直想知道滥用这种方法从长远来看是否会出现任何性能问题 例如 假设我们有一个users桌子 我通常会添加 最常用 的数据 而不是进行任何额外的联接 例
  • 在mysql连接字符串中添加应用程序名称/程序名称[关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 我正在寻找一种解决方案 在连接字符串中添加应用程序名称或程序名称 以便它在 MySQL Workbench 中的 客户端连接 下可见 SQL
  • 使用用户定义函数 MySql 时出错

    您好 请帮我解决这个问题 提前致谢 我在数据库中定义了这些函数 CREATE FUNCTION levenshtein s1 VARCHAR 255 s2 VARCHAR 255 RETURNS INT DETERMINISTIC BEGI
  • 检测浏览器选项卡是否具有焦点

    是否有可靠的跨浏览器方法来检测选项卡是否具有焦点 场景是 我们有一个定期轮询股票价格的应用程序 如果页面没有焦点 我们可以停止轮询并为每个人节省流量噪音 特别是当人们喜欢打开具有不同投资组合的多个选项卡时 Is window onblur
  • 有没有更简单的方法来处理复选框?

    在 vb net 中 我有一个包含一组四个复选框的表单 每个复选框都表示 选中时 用户想要向其订单添加特殊指令 代码如下所示 If SpecialInstruction1CheckBox Checked Then AddSpecialIns
  • 使用 React.forwardRef 与自定义 ref prop 的价值

    我看到React forwardRef从反应文档来看 似乎是将引用传递给子功能组件的认可方式 const FancyButton React forwardRef props ref gt
  • mysql 不带空字符串和 NULL 的不同值

    如何检索没有空字符串值和NULL值的mysql不同值 SELECT DISTINCT CON EMAILADDRESS AS E MAIL FROM STUDENT INNER JOIN CONTACT CON ON STUDENT CON
  • 使用什么框架来引导我的第一个生产 scala 项目?

    我正在第一次涉足 scala 的生产应用程序 该应用程序当前打包为 war 文件 我的计划是创建 scala 编译工件的 jar 文件 并将其添加到 war 文件的 lib 文件夹中 我的增强功能是通过 Jersey 公开的 mysql 支
  • SQL Server 2005 是否有与 MySql 的 ENUM 数据类型等效的数据类型?

    我正在开发一个项目 我想在表中存储一些容易枚举的信息 MySql 的枚举数据类型正是我想要的 http dev mysql com doc refman 5 0 en enum html http dev mysql com doc ref
  • 如何迁移我的 Heroku 数据库?

    我试过了 heroku rake db migrate and heroku pg push 第一个给我一个 PGerror rake 中止错误 有没有办法用heroku完全重建 重置我的数据库 我似乎在他们的文档中找不到它 编辑 在此之前
  • pg_restore错误:角色XXX不存在

    尝试将数据库从一个系统复制到另一个系统 涉及的版本是9 5 0 源 和9 5 2 目标 源数据库名称是foodb与主人pgdba并且目标数据库名称将被命名foodb dev与主人pgdev 所有命令都在将托管副本的目标系统上运行 The p
  • CakePHP 查找 - 按字符串到整数排序?

    我想使用 CakePHP 从数据库中提取照片数组 按照片标题排序 0 1 2 3 我的查询当前看起来像 ss photos this gt Asset gt find all array conditions gt array kind g
  • MYSQL:如何在同一查询中联接两个表,两次引用同一个表

    我有两张桌子 我正在尝试将下面的示例两个表与表 1 引用表 2 两次结合起来 例如 如果我查看表 1 组 2 和成员 7 它应该查找表 2 中的 ID 并给出输出 Group Members Name Name 2 7 Blue Dog T
  • MySQL如何获取unix时间戳的时间差

    我有一个保存值1506947452的变量 需要使用公式从该日期提取分钟 started data now date 但started date采用unix时间戳格式10位int数字 我以ajax形式收到并需要放入mysql查询i试试这个 S
  • 重写 URL,将 ID 替换为查询字符串中的标题

    我对 mod rewrite 很陌生 但我做了一些搜索 但找不到这个问题的答案 我有一个网站 它只有一个 PHP 页面 根据查询字符串中传递给它的 ID 提供数十页内容 我想重写 URL 以便此 ID消失并替换为从数据库中提取的页面标题 例
  • 奇怪的 MySQL Python mod_wsgi 无法连接到 'localhost' (49) 上的 MySQL 服务器问题

    StackOverflow上也有类似的问题 但我还没有发现完全相同的情况 这是在使用 MySQL 的 OS X Leopard 机器上 一些起始信息 MySQL Server version 5 1 30 Apache 2 2 13 Uni
  • 选择获取与 MySQL Group 中 max 对应的整行

    当我使用Max使用后查找特定 MySQL 组中字段的最大值GROUP BY 是否可以获取包含最大值的整行 我在处理一些论坛代码时偶然发现了这个线程 我想获取每个线程的最新帖子并将其显示在特定板的线程列表中 Quassnoi上面的回答对我非常

随机推荐

  • 如何使用SQL组过滤具有最大日期值的行

    我有下表 CREATE TABLE Test Id int value varchar 20 adate varchar 20 INSERT INTO Test Id value adate VALUES 1 100 2014 01 01
  • 从程序文件访问时文件访问被拒绝

    我有一个用 VS 2010 和 C 开发的小型 Winform 应用程序 并创建了设置 我已将应用程序配置文件放入应用程序文件夹路径中以保存用户凭据 安装后应用程序无法访问配置文件 因为我给定了程序安装默认路径 如下所示 ProgramFi
  • 将数组作为 x-www-form-urlencoded 的一部分发送

    I want to send array using postman the request looks like this Im using postman to execute requests I found on the inter
  • 如何通知另一个线程

    我想知道如何通知另一个线程的最佳方式 例如 我有一个后台线程 public void StartBackgroundThread new Thread new Runnable Override public void run Do som
  • 自定义 jQuery 下拉菜单

    我正在使用 jQuery 创建一个自定义的简单下拉菜单 该下拉菜单根据过度状态隐藏 显示元素 我现在遇到的问题是 当您查看它隐藏的显示元素时 您无法将鼠标移动到创建的下拉列表中 关于如何解决这个问题还有什么想法 有没有更简单的方法来做我所拥
  • 使用 Qt 设计应用程序

    我必须实现图形用户界面设计 选择的框架是Qt 经过一些实施工作后 出现了一些困难和问题 主要的一点是有一些花哨的设计元素 比如渐变 3D效果 阴影等等 目前使用的方法 我真的不太喜欢 是使用图形设计中的位图作为各种小部件的背景 根据元素的放
  • CVPixelBuffer 到 CIImage 总是返回 nil

    我试图将从 AVPlayerItemVideoOutput 中提取的 PixelBuffer 转换为 CIImage 但总是为零 The Code if videoOutput hasNewPixelBufferForItemTime pl
  • iPhone模拟器资源未更新

    我的 iPhone 模拟器拒绝更新我编辑的资源 进行 清理 并构建后 安装了新资源 在第二次运行时 它重新安装了旧的 我不知道它们是从哪里来的 有什么建议么 Go into Library Application Support iPhon
  • 比较 2 个文件并保留两个文件不共同的条目

    我有一个 CSV 文件和一个数据库表作为输入 我需要保留数据库表中的所有记录 但排除 CSV 文件中的记录 最终所有内容都会写入 CSV 文件 我所有的尝试都导致了数百个重复 所以我在这里面临很大的挑战 这是一个快速而肮脏的技巧 但它应该适
  • Concrete5:我可以在常规页面上使用 $_GET 变量作为查询字符串吗?

    GET 变量如何与 Concrete5 一起使用 我可以在常规页面上使用它吗 我知道我可以通过 url 段对单页执行此操作 我只是想知道常规页面是否可以 例子是 http www domain name com about us name
  • 弯曲方向列的高度相等,无需设置高度

    我想要一个没有明确设置高度的弹性容器 并且它的所有子容器都具有相同的高度 我不太清楚如何实现这一点 如果弹性容器设置了高度 我可以让它工作 但我希望它的高度根据子项是动态的 同样 它们应该都是相等的 并根据最大的孩子计算 我不想依赖js来使
  • Matplotlib 获取子图(轴)大小?

    只是徘徊 如何获得 Matplotlib 中子图 轴 的大小 如果我执行 Ctrl F 大小 https matplotlib org 3 1 1 api axes api html https matplotlib org 3 1 1 a
  • SQL Server 返回不等于 <> 值且为 NULL 的行

    我有一个表 其中有一列值可以是 rowTypeID 1 2 3 or null 我想编写一个查询 返回其中不包含值 3 的任何行 在此示例中 我想要所有 NULL 行以及所有 1 2 行 我只是不想要值为 3 的行 当前为数据库设置了 Se
  • 将 Gridsearch 中的最佳参数保存在 pandas 数据框中

    我需要将所有参数组合和相应的精度保存在一种 pandas 数据框中 我希望我已经说清楚了 如果我做错了什么 请指出 示例代码是 from sklearn grid search import GridSearchCV import skle
  • 如何检测 ES 模块是否是主模块?

    如何检测 ECMAScript 模块是否为主模块 这对于 CommonJS 模块来说很容易 参见检测是通过 require 调用还是直接通过命令行调用 https stackoverflow com questions 6398196 de
  • Pydantic - 动态创建具有多个基类的模型?

    来自pydantic 文档 https pydantic docs helpmanual io usage models 我的理解是 import pydantic class User pydantic BaseModel id int
  • 如何使用 Entity Framework 和 EntityState.Modified 更新对象的并非每个字段

    我需要更新给定实体对象的除 property1 和 property2 之外的所有字段 有这个代码 HttpPost public ActionResult Add object obj if ModelState IsValid cont
  • NSMutableUrlRequest 吃加号

    我创建 NSMutableUrlRequest 用于将数据发送到服务器 向其中添加所有必需的字段 然后添加用于发送的字符串 如下所示 theRequest setHTTPBody postString dataUsingEncoding N
  • MongoDB 更改流中的resumeAfter 和startAtOperationTime 之间的区别

    在版本 4 中 MongoDB 更改流可以使用两个不同的参数来指定恢复更改流的位置 resumeAfter 一些内部令牌 和startAtOperationTime 时间戳类型 是否可以完全替代resumeAfter with startA
  • MySql 查看性能 [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 如果您走上使用视图的道路 如何才能确保良好的性能 或者最好不要首先使用视图 而只是将等效项合并到您的 select 语句中 这取决于