Yii2:如何使用 distinct 、 groupby 、 sum 和 where 条件

Yii2 : how to use distinct , groupby , sum and where conditions

我想在使用 Yii2 语法选择查询时执行以下查询,

select distinct pfs_id, unitprice, sum(qty)
from order_items
where order_id= id
and item_farm_id = id
group By pfs_id

试了几次还是不行,

请任何人帮助。

下面的查询 return 您需要数组形式的结果。

$data=ModelName::find()  //replace your model name here
->select('distinct(pfs_id),unitprice,sum(qty)')
->where(['order_id'=>id,'item_farm_id'=>id])
->groupBy('pfs_id')
->asArray->all();

您也可以使用别名:

$data=ModelName::find()
->select('distinct(pfs_id) as pfs_id,unitprice,sum(qty) as sum_of_qty')
->where(['order_id'=>id,'item_farm_id'=>id])
->groupBy('pfs_id')
->asArray->all();