从查询响应的结果中未在Yii2的select函数中获取别名

时间:2019-03-26 07:31:57

标签: php yii2

我的代码如下。问题是,当我有print_r $ data时,我没有得到total_points。

$query = IdsAwardEntries::find()
                ->select(['ids_award_entries.*','SUM(ids_award_points.i_award_points) AS total_points']) 
                ->join('LEFT JOIN', IdsAwardPoints::tableName(), 'ids_award_points.ids_award_entry_id=ids_award_entries.id')
                ->where([
                    'ids_award_entries.deleted_at' => null,
                    'ids_award_entries.i_shortlist_status' => 1,
                ])
                ->groupBy('ids_award_entries.id')
                ->all()
                ;

如果我做错了,请帮助我。如何从响应中提取total_points值?

也为了您的信息,我得到的答复没有错误。当我在total_points上应用排序功能时,根据ASC和DESC顺序,它工作得很好。

1 个答案:

答案 0 :(得分:1)

您正在使用ActiveModel IdsAwardEntries,在这种情况下,仅显示与activeModel相关的数据。

如果您还想查看sum的total_points别名,一种简单的方法是将该名称添加为IdsAwardEntries模型中的公共变量

class IdsAwardEntries extends \yii\db\ActiveRecord
{
    public $total_points;  
    .....