Для тих, хто любить мене, роблю ту ж помилку. Ось розроблена відповідь, перевірена в Laravel 5.7
А. Записи в БД
UserFile :: orderBy ('created_at', 'desc') -> get () -> toArray ();
Array
(
[0] => Array
(
[id] => 2073
[type] => 'DL'
[url] => 'https://i.picsum.photos/12/884/200/300.jpg'
[created_at] => 2020-08-05 17:16:48
[updated_at] => 2020-08-06 18:08:38
)
[1] => Array
(
[id] => 2074
[type] => 'PROFILE'
[url] => 'https://i.picsum.photos/13/884/200/300.jpg'
[created_at] => 2020-08-05 17:20:06
[updated_at] => 2020-08-06 18:08:38
)
[2] => Array
(
[id] => 2076
[type] => 'PROFILE'
[url] => 'https://i.picsum.photos/13/884/200/300.jpg'
[created_at] => 2020-08-05 17:22:01
[updated_at] => 2020-08-06 18:08:38
)
[3] => Array
(
[id] => 2086
[type] => 'PROFILE'
[url] => 'https://i.picsum.photos/13/884/200/300.jpg'
[created_at] => 2020-08-05 19:22:41
[updated_at] => 2020-08-06 18:08:38
)
)
B. Бажаний згрупований результат
UserFile :: select ('type', 'url', 'updated_at) -> distinct (' type ') -> get () -> toArray ();
Array
(
[0] => Array
(
[type] => 'DL'
[url] => 'https://i.picsum.photos/12/884/200/300.jpg'
[updated_at] => 2020-08-06 18:08:38
)
[1] => Array
(
[type] => 'PROFILE'
[url] => 'https://i.picsum.photos/13/884/200/300.jpg'
[updated_at] => 2020-08-06 18:08:38
)
)
Тож передайте лише ті стовпці "select()"
, значення яких однакові. Наприклад: 'type','url'
. Ви можете додати більше стовпців за умови, що вони мають таке саме значення 'updated_at'
.
Якщо ви намагаєтеся пройти "created_at"
або "id"
в "select()"
, то ви отримаєте записи такий же , як А. Так як вони різні для кожного рядка в БД.