Val*_*kyi 2 mysql indexing non-clustered-index
当我以简单的方式创建时index,一切正常:
create index qty_ix on vacancy_desc_to_words (qty);
Run Code Online (Sandbox Code Playgroud)
但是当我尝试创建 时NONCLUSTERED INDEX,我遇到了问题: a WorkbenchnotMySQL console都不知道NONCLUSTERED和INCLUDE命令。
Linux 下的 MySQL 版本:
mysql Ver 14.14 Distrib 5.7.24, for Linux (x86_64) using EditLine wrapper
Run Code Online (Sandbox Code Playgroud)
如何使用NONCLUSTERED/INCLUDE命令?
Bil*_*win 10
您不需要指定索引位于NONCLUSTEREDMySQL 中,它是从表设计中隐含的。
只有 PRIMARY KEY 或第一个非 NULL UNIQUE KEY 可以是聚集索引,并且无需您选择它们都将是聚集索引。
表中的所有其他索引都是隐式非聚集索引。
我假设该表使用 InnoDB 存储引擎,这是默认的存储引擎。如果您使用其他存储引擎,规则可能会有所不同。例如,MyISAM 根本不支持聚集索引。
MySQL也不支持这个概念INCLUDEMicrosoft 那样的概念。仅包含为索引命名的列。
您应该记住,每个品牌的 SQL 数据库都有自己的功能和语法。SQL 标准中没有特别提及索引,因此 SQL 数据库供应商之间没有义务遵守任何一致的功能集。
因此,您应该熟悉所使用的数据库品牌的语法和功能,并且不要在未检查文档的情况下尝试在另一个品牌上使用一个品牌的功能。
https://dev.mysql.com/doc/refman/5.7/en/create-index.html
| 归档时间: |
|
| 查看次数: |
9193 次 |
| 最近记录: |