鍍金池/ 問答/PHP  數據庫/ mysql5.7 建立索引的方式有個問題請教下

mysql5.7 建立索引的方式有個問題請教下

mysql版本5.7

問題1:
給數字類型的字段添加索引:如日期 存儲為 int 類型,那么給日期添加索引可以用
用index 或者 key 這樣的方式?
index(字段名)?

問題2:整形類型的索引是用index 還是用key啊 好模糊啊 不太懂 求指點下。

問題3:多對多中的中間表(名字為C吧) 如 id Aid Bid 其中Aid 和Bid 為關聯表 ID字段,請問是否添加
index(Aid)
Index(Bid)
這樣來提高查詢效率?

回答
編輯回答
維他命

index 或者key 都是索引的名字而已,看需求情況,可以給需要的表加唯一索引,對于中間表,就像你加的那兩個索引,其實對于查詢速度是有影響的,只不過數據不太穩(wěn)定,可以在多對多的表加外鍵解決。最后加索引的鍵注意鍵的長度,具體了解下聚簇的概念。

2018年6月24日 05:48
編輯回答
尛憇藌

。。。不是很明白,大概猜想一下,你所說的 index 是指普通索引,key 是指主鍵索引么?因為索引從字段數可以分為字段索引和組合索引(多字段形成的一個索引,多層級關系),從索引類型分為 普通索引,唯一索引,主鍵索引和全文索引。基于你對索引不太了解(個人判斷)的情況對你做出以下回答:

索引效率是由索引的是否重復性決定的,比如,字段 aid 它是唯一性的值,就算你不設置唯一索引,它其實也等價唯一索引,而索引類型中主鍵索引的效率是最高的,但它也只能設置一個,所以一般作為查找的標識使用。如果你要對關系表做索引,其實設置兩個就好了,其中一個主鍵給表的標識字段 ID 設置。然后另一個索引則創(chuàng)建一個關聯索引 AID,BID ,需要注意的是,根據你的項目需求,設置 AID 和 BID 的順序需要調整一下,至于更多的,我想這個表是不需要的,因為索引的使用,它每次只會使用一個。更多的信息請自行了解。

2018年1月2日 05:15
編輯回答
夏木

怕是你完全沒去理解索引是什么東西吧。 索引有 unique,primary key, key, fulltext, spatial 這幾個索引,然后你再命名就行了,還有你多表連接的時候,不是說各自建索引就好,而是你本身對這個字段的使用作用,或者說是使用到的頻率而去設置索引

2017年11月17日 13:50