🐒

【サルが書く】EloquentでそれぞれのSELECTで取ってきたデータを、それぞれでソートしてくっつけたい

1 min read

わきゃ!!

EloquentでそれぞれのSELECTで取ってきたデータを、それぞれでソートできないんですけど!

このようなことをしたかった

$taro = EloquentOffice::where('name', 'taro')
        ->orderBy('created_at', 'asc');

$jiro = EloquentOffice::where('name', 'jiro')
        ->orderBy('created_at', 'asc')
        ->union($taro)
        ->paginate();

これだとorderByがうまく動いてくれない

$taro = EloquentOffice::where('name', 'taro')
        ->limit(999999999999)
        ->orderBy('created_at', 'asc');

$jiro = EloquentOffice::where('name', 'jiro')
        ->limit(999999999999)
        ->orderBy('created_at', 'asc')
        ->union($taro)
        ->paginate();

これだとorderByがうまく動いてくれる

すべてのデータを取得してきて並び替える時は->limit(999999999999)をつけているがもっとスマートなやり方が無いでしょうか......

Discussion

ログインするとコメントできます