我有一些表超过300,000条记录,表结构:
id | title | source | description | date | fullindex
id是PRIMARY key,date加了索引,source加了索引,fullindex加了全文索引。
现在我想查询。每组最新 5 个,带有全文搜索。
我努力了
SELECT 'a' as t_name,id,title,source,description,date,fullindex
FROM table1 a1
WHERE MATCH (fullindex) AGAINST ('+bool' IN BOOLEAN MODE)
and 6>(select count(*) from table1 where source=a1.source and date>a1.date)
但是这个查询需要6.5987s,好感度很低。
那么如何进行更快的查询呢?
PS:我mysql greatest n per group
在google上搜索过,但是我的技术有限,没有给自己写出更好的代码,等待一些mysql高手帮忙。