Merhabalar herkese
Öncelikle nasılsınız diye sormak isterim çünkü baya oldu buralara gelmeyeli
( Şimdi bazıları demek ki işi düştü de gelmiş diyebilir. Çok haklılar

)
Sorum aslında laravelin yanında sql ile de ilgili diye düşünüyorum
Şöyle ki 4 tane modelim var
1- User
2- Store
3- Order
4- OrderItem
Bunlar arasında yukarıdan aşağıya doğru hasMany ile bağlantı mevcut
Burada bir kullanıcının bütün mağazalarındaki bütün siparişlerini sipariş kalemleri ile birlikte getirmek istersek optimum metod ne olur
foreach user->stores as store
foreach store->orders as order
foreach order->orderItems as item
en ölümcülü bu sanırım
Benim yöntemim ise şu şekilde
$orders=Order::with("orderItems")->whereIn("store_id",function($t){
$t->select("id")->from("stores")->where("user_id",1);
})->get();
İlk örneği atlarsak soru bu yapı için tamamen ilişkiler ile halletmek mi yoksa subquery mi sorusuna dönüşüyor
Görüşüm kullandığım yöntemin uygun olduğu hakkında siz neler söylersiniz bu konu hakkında tavsiyeleriniz veya tecrübeleriniz nelerdir?