Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
何时在mysql表中添加索引?_Mysql_Indexing_Query Optimization - Fatal编程技术网

何时在mysql表中添加索引?

何时在mysql表中添加索引?,mysql,indexing,query-optimization,Mysql,Indexing,Query Optimization,我对CREATETABLE语法有疑问,更深入地说,什么时候在它上面创建索引 更深入地说,我需要从头开始创建一个表,加载从CSV中获取的约100万条记录 问题是:什么时候应该在表上创建索引? 或者更好: -我需要在CREATETABLE语句上使用索引语法,然后填充表吗 或 -我是否必须创建表,填充它,然后使用ALTERTABLEADDINDEX语句 哪个更快?最好在存储数据(特别是大数据)后创建索引 以前创建索引会增加DBMS的开销。加载转储时,最好不要使用索引。插入的每一行都会触发索引更新,这在

我对CREATETABLE语法有疑问,更深入地说,什么时候在它上面创建索引

更深入地说,我需要从头开始创建一个表,加载从CSV中获取的约100万条记录

问题是:什么时候应该在表上创建索引? 或者更好: -我需要在CREATETABLE语句上使用索引语法,然后填充表吗 或 -我是否必须创建表,填充它,然后使用ALTERTABLEADDINDEX语句


哪个更快?

最好在存储数据(特别是大数据)后创建索引


以前创建索引会增加DBMS的开销。

加载转储时,最好不要使用索引。插入的每一行都会触发索引更新,这在大型导入中非常昂贵。最好在事后建立索引。