如何向MySQL表中添加索引?我有一個非常大的MySQL表,包含大約15萬行數(shù)據(jù)。目前,當(dāng)我試著運行SELECT * FROM table WHERE id = '1';代碼運行良好,因為ID字段是主要索引。然而,最近的一個項目的發(fā)展,我不得不搜索另一個領(lǐng)域的數(shù)據(jù)庫。例如SELECT * FROM table WHERE product_id = '1';這個字段以前沒有索引,但是,我把它作為索引添加了,但是當(dāng)我嘗試運行上面的查詢時,結(jié)果非常慢。EXPLAIN查詢顯示,當(dāng)我已經(jīng)添加了一個字段時,產(chǎn)品_id字段沒有索引,因此,該查詢在20分鐘到30分鐘的任何地方返回一行。我的全部解釋結(jié)果是:| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |+----+-------------+-------+------+----------------------+------+---------+------+------+------------------+| 1 | SIMPLE | table | ALL | NULL | NULL | NULL | NULL | 157211 | Using where |+----+-------------+-------+------+----------------------+------+---------+------+------+------------------+值得注意的是,我剛剛查看了ID字段,ID字段存儲為int,而ProductID字段存儲為VARCHAR。這可能是問題的根源嗎?
如何向MySQL表中添加索引?
墨色風(fēng)雨
2019-07-16 09:09:34