mysql - MySQL中的INDEX和VIEW有什么区别

标签 mysql sql database view indexing

Index 或 View 哪个更快,两者都用于优化目的,都在表的列上实现,所以任何人都可以解释哪个更快,它们之间有什么区别,以及我们使用 View 和索引的场景。

最佳答案

查看

  • View 是一个逻辑表。它是逻辑上存储数据的物理对象。 View 只是指存储在基表中的数据。
  • View 是一个逻辑实体。它是一条存储在数据库系统表空间中的SQL语句。 View 的数据构建在数据库引擎在 TEMP 表空间中创建的表中。

索引

  • 索引是映射到数据物理地址的指针。因此,通过使用索引,数据操作变得更快。
  • 索引是一种性能调整方法,可以更快地检索记录。索引为出现在索引列中的每个值创建一个条目。

模拟:

假设在一家商店中,假设您有多个货架。根据保存的项目对每个机架进行分类就像创建索引一样。因此,您会知道要查找特定项目的确切位置。这是索引。

在同一家商店中,您想了解多个数据,例如,产品、库存、销售数据等作为一个综合报告,然后可以将其与 View 进行比较。

希望这个类比可以解释什么时候必须使用 View ,什么时候必须使用索引!

关于mysql - MySQL中的INDEX和VIEW有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24197856/

相关文章:

php - 创建具有许多一对多关系的 DAO 查询?

sql - 计算值出现在另一个表 sql 中的次数

mysql - 如何在 MySQL 中 UNION 10 个表?

c# - SQL 和 ASP.NET 从物化 'System.Int64' 类型到 'System.Int32' 类型的指定转换无效

mysql - 在 Windows Mobile 和 MySQL 之间同步数据库

php - 多数据库代码点火器

c# - 是否可以在 Visual Studio 项目中使用 linq 语法使用 Mysql?

mysql - Google CloudSQL 第二代创建功能不起作用

java - 当用户操作可以删除中间的行时,如何处理数据库分页?

database - Grails 数据库迁移插件 - Java 堆空间