1

我有一个 Yii 查询:

$criteria->select = 't.baniid,SUM(t.impression) AS impression, SUM(t.`unique`) AS `unique`, IFNULL((SELECT SUM(clicks) FROM _clicksdaily WHERE baniid=t.baniid GROUP BY baniid), "0") AS clicks';
$criteria->group = 't.baniid';

查询运行良好并取回所有参数。问题是印象模型没有click属性并且它没有显示为属性(所以我不能在小部件中使用它)......

知道如何从 SQL 查询中分配另一个属性吗?(我添加了公共 $clicks,但它不起作用)。谢谢。

4

1 回答 1

2

public $clicks似乎对我有用。

在您的模型中:

public $clicks;
public function scopes() {
    return array(
        'clicks' => array(
            'select' => 't.baniid,SUM(t.impression) AS impression, SUM(t.`unique`) AS `unique`, IFNULL((SELECT SUM(clicks) FROM _clicksdaily WHERE baniid=t.baniid), 0) AS clicks',
            'group ' => 'baniid',
        ),
    );
}

然后使用它:

$firstModel = MyModel::model()->clicks()->find();
echo $firstModel->clicks;
于 2012-08-23T17:39:16.543 回答