Pradeep Deepu
Pradeep Deepu

Reputation: 25

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

I want execute below query in using Yii2 syntax selection query,

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

I tried several times but still not getting luck,

Please any one help.

Upvotes: 0

Views: 3600

Answers (1)

Yasin Patel
Yasin Patel

Reputation: 5731

Below query return you desire result as array.

$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();

You can also use alias:

$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();

Upvotes: 3

Related Questions