0
test_idとのcreated_at
を持つテーブルを持っている列 "のcreated_at" は、異なる値を持っています。私は、SQLクエリを実行したい、どこに列 "created_at"で分割します。どこ
この構造
私は配列のこのような構造を取得したい:
$all = array('created_at'=>'somevalues', 'test'=>array());
test_idとのcreated_at
を持つテーブルを持っている列 "のcreated_at" は、異なる値を持っています。私は、SQLクエリを実行したい、どこに列 "created_at"で分割します。どこ
この構造
私は配列のこのような構造を取得したい:
$all = array('created_at'=>'somevalues', 'test'=>array());
それは私たちが話しているどのように多くの値によって決まります。 100の異なるcreated_at値がある場合、ソリューションは100 + 1のクエリを実行します。だからあなたはサーバーに多くのプレッシャーをかけます。 created_atの値が多い場合は、データを取得し、created_atで順序付けし、結果を手作業でグループ化するだけです。私はこれがあなたがやろうとしているものよりずっとずっと速くなると信じています。何かのように
$model = Model::find()->orderBy(['created_at' => SORT_ASC])->all();
foreach($model as $item) {
$data[$item->created_at]['results'][] = $item;
// $data[$item->created_at]['created_at'] = $item->created_at; if you really need to
}
最後に、あなたはそれがほしいと思う方法をほとんど正確に終わらせます。
yii2モデルを使用していますか? – lin
はい、私はこの解決策を見つける: $モデル=モデル:: find() - > groupBy( 'created_at') - > all(); ===結果:: find() - >ここで(['created_at' =)は、$ this-> > $ item-> created_at]) } ' – Jdoe
これ以上助けが必要ないのですか? – lin