如何用Eloquent获得最重复的值?

时间:2015-03-22 12:38:30

标签: laravel laravel-4 eloquent

我在Eloquent中有很多关系(帖子和标签)。是否可以在数据透视表中订购标签以获得10个最常用的标签?

pivot

2 个答案:

答案 0 :(得分:0)

是的,可以添加某种属性(到数据透视表并在数据库中的每个选择时更新它。(增加值)

选择使用wherePivot方法时。

如果您想要"最近使用过",请在迁移中为时间戳添加时间戳,并在每次选择时触摸数据透视表。

答案 1 :(得分:0)

是的,实际上这很简单。

在存储标记的表中添加另一个名为count_cache的列(或任何您想要的),然后每次向帖子实例添加标记实例时,执行count() tag_id在数据透视表中,将值存储到标记表中的count_cache列。

然后你可以简单地得到count_cache collumn(降序)排序的标签表,限制为10。

如果您需要进一步说明,请发表评论:)