CakePHP中有多贵(‘count’)?

我有一个CakePHP应用程序,我试图计算用户每种类型的帖子有多少.我也使用paginate帮助器在他们的个人资料上显示所有用户的帖子.
我可以:
1)对所有用户的帖子进行查找(‘all’,$conditions)请求,然后解析我需要的计数(通过邮寄方式发送并检查它是否与我正在查找的内容相匹配).
2)使multiplie find(‘count’,$conditions)请求,获得我需要的所有计数.
3)维护用户表中的新列以在创建帖子时跟踪这些数字(放置将涉及在发布新帖子时写入用户帐户).
一个是最好的选择?

解决方法:

数据库获取所有记录并在PHP中计算它们是非常浪费的废话.这正是数据库的用途.

find(‘count’)只是创建一个SQL查询,如SELECT COUNT(*)FROM … WHERE …,这是最快的方法.添加适当的条件以获得所需的计数,您可能需要刷新sql以了解这些条件.

还有counter-caching的特殊内容,如果您计算hasMany关系,您可能需要查看.

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...