首页 > 解决方案 > 按相同的列值对结果进行分组

问题描述

我正在尝试以下操作:

我有一个包含以下字段的模型(HbwerllMargins):

id| userId | clinicId | payMethodId | percentage | createdTime | updatedTime | deletedTime

我正在尝试以下查询:

$hbwellMargins = HbwellMargins::find()->andWhere(['clinicId' => $id])->all();

结果与某个临床ID值相关联,但我还需要将结果按相同的用户ID值分组而不指定值。

例如,对于clinicId=1,userId = 1 有6 个寄存器,userId = 2,有1 个寄存器等

我试图在 ActiveQuery 文档中找到答案,但我还没有找到解决方案……我需要做什么?有没有办法做到这一点?

非常感谢您的帮助!!

标签: phpsqlyii2

解决方案


您可以按相同的userId值对结果进行分组,如下所示:

如果您只想获取所有记录并将结果分组:

$hbwellMargins = HbwellMargins::find()->orderBy('userId')->all(); 

如果您想根据您的条件获取结果并将结果分组:

$hbwellMargins = HbwellMargins::find()->where(['clinicId' => $id])->orderBy('userId')->all();

推荐阅读