Zwracanie pustego rekordu, jeśli go nie ma

0
$model->relation()
  ->with('otherRelation', function ($query) {
      $query->selectRaw('date(created_at) as day');
      $query->whereDate('created_at', '>=', now()->subDays(6)->startOfDay());
      $query->groupBy('day');
  })
  ->get();

I tak wyglądają zwrócone dane:

 [
    {
        (...),
         "otherRelations": [
             {
                 (...),
                 "day": "2023-04-14"
             },
             {
                 (...),
                 "day": "2023-04-15"
             },
         ],
     },
     {
         (...),
          "otherRelations": [
              {
                  (...),
                  "day": "2023-04-14"
              },
              {
                  (...),
                  "day": "2023-04-15"
              },
          ],
     },  
]

Chciałbym, aby inna relacja miała rekordy na 7 dni wstecz. Jeśli ich nie ma to sama data bez danych lub można to też przerobić na keyBy i wtedy mógłby być null.

Jak to zrobić najefektywniej i najestetyczniej?

0

najlepiej zrobic to z Left Join

1 użytkowników online, w tym zalogowanych: 0, gości: 1