我有这个疑问这需要时间。下面是查询 -在约束查询慢?
SELECT
m1.mes_id,
m1.body,
m1.subject,
m1.frm_id AS mem_id,
m1.date
FROM
messages_system_new m1
WHERE
m1.mes_id IN
(SELECT
MAX(mn1.mes_id) AS mes_id
FROM messages_system_new mn1
WHERE
mn1.mem_id = '401'
AND mn1.frm_id != '401'
AND mn1.trashed_user NOT LIKE '%401%'
AND mn1.type = 'message'
AND mn1.folder = 'inbox' AND mn1.is_spam='N'
GROUP BY mn1.frm_id
)
发射时解释它给
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY m1 ALL (NULL) (NULL) (NULL) (NULL) 6091 Using where
2 DEPENDENT SUBQUERY mn1 ref mem_id,frm_id mem_id 8 const 59 Using where; Using temporary; Using filesort
这是什么意思,我怎样可以提高查询?
你可以租用所涉及的表的模式 – 2013-03-08 10:22:55
确保你已经创建了表'messages_system_new'中的字段'mes_id'的索引 – Lake 2013-03-08 10:24:22
@Lake呀!它的主键(mes_id) – John 2013-03-08 10:25:50