1. 程式人生 > >mysql數據庫優化之 如何選擇合適的列建立索引

mysql數據庫優化之 如何選擇合適的列建立索引

索引 taf order 誰的 bsp 選擇 spa mysql 查詢

1. 在where 從句,group by 從句,order by 從句,on 從句中出現的列;

2. 索引字段越小越好;

3. 離散度大的列放到聯合索引的前面;比如:

select * from payment where staff_id = 2 and customer_id = 236;

針對上面的查詢是 index(sftaff_id, customer_id) 好?還是index(customer_id, staff_id)好?

因為customer_id的離散度更大,因此用後面的更合適!!

那麽問題來了。怎麽判斷離散度呢,可以使用 select count(distinct customer_id), count(distinct staff_id) from 表名

誰的值大,說明這一些列的離散度更高!

mysql數據庫優化之 如何選擇合適的列建立索引