我在數據庫中有一個表'posts',它在user_id(鍵:MUL)上有非唯一索引。 mysql> show columns from posts;
+---------+--------------+------+-----+-------------------+----------------+
| Field | Type | Null | Key | Default | Ex
我有以下MySQL查詢 select points_for_user from items where user_id = '38415';
上查詢說明返回此 id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE items index NULL points_for_user
我有以下MySQL查詢 explain select item_id from items use index(user_item_id) where user_id=9 and item_id=10000
返回 id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE items re
如果我有一個3列索引MyISAM表,像 create table t (
a int,
b int,
c int,
index abc (a, b, c)
) engine=MyISAM;
的問題是,可以在下面的查詢充分利用指數: select * from t where a=1 and c=2;
換句話說,考慮到索引是一棵b樹,MySQL可以跳過
我有一張需要執行查詢的約3000萬條記錄。從我的閱讀中,我認爲使用最左前綴與我需要選擇的所有字段的組合索引是正確的方法,但是當我在查詢上運行解釋時,甚至不使用索引。 這是查詢: select distinct email FROM my_table
WHERE `customer_id` IN(278,428,186,40,208,247,59,79,376,73,38,52,68,227)