我有一個帶有2K個寄存器InnoDB
引擎的MySql表。前兩個字段是名爲id
的PRIMARY KEY (AUTO INCREMENT)
和名爲codreg
的INDEX KEY VARCHAR(255)
。主鍵vs主鍵索引速度
在我的表格只有一個PRIMARY KEY (VARCHAR(6))
之前,調用codreg
。
問題是在新配置中,codreg(like)的搜索比唯一的codreg配置慢。
主鍵索引是否比關鍵索引更快?
這個問題是關係到我在做這個查詢
SELECT CE.*, GI.* FROM ($_q_aux) CE inner join table2 GI ON GI.codreg=CE.codreg
$ _q_aux性能問題是:
SELECT codreg FROM table2 WHERE codreg like '%string%'
表1是2K項和表2 20K條目
執行時間太慢..
感謝您的編輯,有人可以幫我嗎? – Hanzo
即使你沒有說你使用了哪個引擎,答案是 - 是的,PK比正常指數「更快」。此外,'LIKE'搜索是非常無效的,它的執行方式(無論是否有效)是值得懷疑的,再加上一個用於PK的varchar很可能不會產生最佳性能。您可以優化您的搜索,使其更快捷。即使沒有索引。 2k條目對於MySQL來說是一個巨大的損失。 –
InnoDb是引擎。實際上PK是一個自動增量 – Hanzo