我当前有三张表:
1.business 商家表
id
name
...
2.activity 活动表
id
name
...
3.business_activity 商家活动关联表
id
business_id
activity_id
...
查询里的代码:
$businessId = ...;
$activities = BusinessActivity::find()->joinWith('activity')->where(['business_id' => $businessId])->asArray()->all();
BusinessActivity类里的关联查询方法:
public function getActivity() {
return $this->hasOne(Activity::className(), ['id' => 'activity_id']);
}
得到的结果大致如下:
Array
(
[0] => Array
(
[id] => 1
[business_id] => 2
[activity_id] => 1
[activity] => Array
(
[id] => 1
[name] => 新用户立减(不与其他活动共享)
)
)
[1] => Array
(
[id] => 2
[business_id] => 2
[activity_id] => 2
[activity] => Array
(
[id] => 2
[name] => 满减优惠
)
)
)
请问怎样查询能得到这种查询结果:
Array
(
[0] => Array
(
[id] => 1
[business_id] => 2
[activity_id] => 1
[name] => 新用户立减(不与其他活动共享)
)
[1] => Array
(
[id] => 2
[business_id] => 2
[activity_id] => 2
[name] => 满减优惠
)
)
也就是想把原来查询出来的二维数组弄成一维数组(使用yii2现有api来做),先谢谢大家了。
https://github.com/yiisoft/yii2/blob/master/docs/guide/db-active-record.md#selecting-extra-fields