Я новичок в laravel, и я использую Laravel 5.2. Я хочу иметь запись о максимальной дате окончания в столбцах заказов по индивидуальному запросу. Мои столы, как:Laravel 5 Eloquent получение записей из связанных таблиц
request
-----------
id | name
----------
1 | My request
bookings
-----------
id | request_id | start_date | end_date
--------------------------------------------
1 | 1 | 2016-03-01 | 2016-03-05
2 | 1 | 2016-03-10 | 2016-03-20
3 | 1 | 2016-03-25 | 2016-03-28
Request Model
------------------
public function bookings()
{
return $this->hasMany('App\Booking');
}
Я хочу, чтобы данные запроса с максимальной датой окончания (на приведенном выше примере запись будет бронирование Id: 3). Пожалуйста помоги.
Я попытался следующие:
$request = \DB::table('requests')
->join('bookings', 'requests.id', '=', 'bookings.request_id')
->where('requests.id', 1)
->max('bookings.end_date');
Но мне интересно, как это сделать с красноречивым.
бронирований в таблице могут быть в любом порядке. Например: '1 | 1 | 2016-03-01 | 2016-03-05 2 | 1 | 2016-03-25 | 2016-03-25 3 | 1 | 2016-03-10 | 2016-03-20' – Pranab
@Pranab Я не понимаю проблему, если вы установите условие 'ORDER BY end_date', они будут __ordered__ независимо от их порядка ввода. Выполняет ли вышеуказанная функция для вас или нет? –
Ahh .... да, это работает. Извините, я не получил ваш ответ с первого взгляда, но теперь ясно. Спасибо :) – Pranab