yii查询中重建索引

//重建索引
$query->select(['A.prod_id', 'A.name', 'B.train_departure', 'B.train_departure_id'])
->joinWith('main')->joinWith('offer')->joinWith('train')
->groupBy("A.prod_id, B.train_departure_id")
->orderBy('prod_line_main.code, prod_com.prod_id desc')->indexBy(function ($row) {
return $row['prod_id']. $row['train_departure_id'];
})->asArray();
当前模型为A, A与B是一对多的关系
若不加indexBy $row['train_departure_id']则groupBy只会返回A的总条数

indexBy('day')返回以day为索引的数组
->select('day, price')
->limit(2)
->indexBy('day')->orderBy('day asc')//价格排序升序
->asArray()
->all();

你可能感兴趣的:(yii查询中重建索引)