私はLaravel Eloquentを使用してデータベースを2回ヒットしています。私は2つのクエリの結果を1つにマージします。どのようにしてこれを単一のクエリにして、データベースに一度しかヒットしないのですか? 0 idとPARENT_IDがPARENT_IDではなくIDでソートさ0ではない行でソートさ:このクエリをどのように組み合わせることができますか?
$openers = Comments::select('id', 'parent_id', 'opener_id', 'topic', 'username', 'comment', 'upvotes', 'created_at', 'updated_at', 'deleted_at')
->where('topic', '=', $topic)
->where('parent_id', '=', 0)
->orderBy('id')
->orderBy('updated_at', 'desc')
->get();
$replies = Comments::select('id', 'parent_id', 'opener_id', 'topic', 'username', 'comment', 'upvotes', 'created_at', 'updated_at', 'deleted_at')
->where('topic', '=', $topic)
->where('parent_id', '!=', 0)
->orderBy('parent_id')
->orderBy('updated_at', 'desc')
->get();
$comments = $openers->merge($replies);
基本的に私は、PARENT_IDを持つ行がしたいです。
これは素晴らしいです。ありがとう。 – rotaercz