我如何查看前 5 个结果并将其余结果分组在Cakephp 2中的“其他”下?如果我有一个带有“页面”字段的表“访问”,它有例如 100(它将更多)行,我需要结果如下:
Other 40
/ 20
/about 15
/contact 10
/welcome 10
/test 5
这是使用常规 Mysql 的一种方法:
SELECT case when v2.page is not null then v1.page else 'other' end AS viewpage, COUNT(*) AS count
FROM visits v1
LEFT JOIN
(
SELECT page, COUNT(*) as pcount
FROM visits
GROUP BY page
ORDER BY pcount DESC
LIMIT 5
) v2 on v1.page = v2.page
GROUP BY viewpage
ORDER BY count DESC
但是如何在Cakephp 2中做到这一点?认为当我编写 Mysql 查询时会很容易......