我有一个看起来很像这样的MySQL数据库:
期限----------- LOB ---------日期------
dde JM Part A 2016-07-01
毒品浪费JM A部分2016-07-01
毒品浪费JM A部分2016-07-01
重复JM Part A 2016-07-01
信贷余额JM B部分2016-07-01
毒品浪费JM Part B 2016-07-01
所以,我希望每个LOB(lob是一个类别)的TOP 4(或n)个“术语”-每月
所以在这个例子中
JM A部分2016年7月
--dde-7
-毒品浪费-5
-贷方余额-3
-重复-1
JM B部分-2016年7月
--dde-7
-放电统计-5
-贷方余额-3
-多付-1
las,我有点迷茫。到目前为止,我能做的最好的事情是
SELECT条款,LOB,COUNT(条款)uid_count
从qs
lob分组
ORDER BY uid_count DESC
极限5
这似乎显示所有lob和所有日期范围的前5个搜索词。
因此,任何帮助将不胜感激。我正在查看在PHP页面上显示报告。
感谢您的时间。
最佳答案
如果唯一Lob的数量较少..您可以使用union
(select Term, count(*)
from my_tbale
where Lob = 'JM Part A'
group by Term, `Date`
order by count(*) desc limit 5)
union
(select Term, count(*)
from my_tbale
where Lob = 'JM Part B'
group by Term, `Date`
order by count(*) desc limit 5)
关于php - 如何显示MySQL数据库中的热门搜索词并按日期分组,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38152983/