0
我在laravel查詢:Laravel查詢優化
...
$query = $model::group_by($model->table().'.'.$model::$key);
$selects = array(DB::raw($model->table().'.'.$model::$key));
...
$rows = $query->distinct()->get($selects);
這工作得很好,給我等領域鑰匙,我需要,但問題是,我需要得到所有列,而不僅僅是關鍵。
使用此:
$selects = array(DB::raw($model->table().'.'.$model::$key), DB::raw($model->table().'.*'));
是不是一種選擇,cuz它不是與PostgreSQL的工作,所以我用$rows
獲得其餘列:
for ($i = 0; $i<count($rows); $i++)
{
$rows[$i] = $model::find($rows[$i]->key);
}
但正如你看到的,這是它效率太低,所以我能做些什麼來使它更快,更高效?
你可以找到整個代碼在這裏:https://gist.github.com/neo13/5390091
PS。我要加入但我不知道如何?
不適用於PostgreSQL – user2277033