もちろん、結果が部分的であるため、最初のテーブルの列では order_by を使用できますが、2 番目のテーブルの列では使用できません。
「結合」を使用すると、すべてが完璧に機能しますが、雄弁にこれを達成する必要があります。私は何か間違ったことをしていますか?
これは例です:
//with join
$data = DB::table('odt')
->join('hdt', 'odt.id', '=', 'hdt.odt_id')
->order_by('hdt.servicio')
->get(array('odt.odt as odt','hdt.servicio as servicio'));
foreach($data as $v){
echo $v->odt.' - '.$v->servicio.'<br>';
}
echo '<br><br>';
//with eloquent
$data = Odt::get();
foreach($data as $odt){
foreach($odt->hdt()->order_by('servicio')->get() as $hdt){
echo $odt->odt.' - '.$hdt->servicio.'<br>';
}
}