我需要在Laravel 5.1中创建一个选择查询,我不会通过常规SQL创建任何问题,我想知道是否可以帮助我将它写入Laravel。Laravel使用max和group进行查询
我创建了这个查询,获取所有拥有卡车,拖车和delivery_date等于特定日期(来自$ week_array)的用户。这是工作,但它缺少一些组件
$RS = $this->instance->user()
->with(['driver.delivery' => function($query) use ($week_array) {
$query->where('delivery_date', [Carbon\Carbon::parse($week_array['date'])->toDateTimeString()]);
}])
->with(['driver.trailer', 'driver.truck', 'driver.trailer.trailerType'])->get();
我需要排除那些拥有它等于或大于上面的查询选择的交货日期更大MAX交货日期的驱动程序。这是我需要插入laravel的普通查询。
换句话说,我需要下面的查询(简体)转换为Laravel:
SELECT
*
FROM
USERS
INNER JOIN
DRIVERS ON DRIVERS.user_id = USERS.id
INNER JOIN
DELIVERIES ON DELIVERIES.driver_id = DRIVERS.id
WHERE
1 = 1
AND DELIVERIES.driver_id NOT IN (SELECT
driver_id
FROM
DELIVERIES
GROUP BY driver_id
HAVING MAX(delivery_date) >= '2016-05-10')
我很害怕我没有完全理解你的问题。你有选择MAX值的问题吗? – Jackowski
我添加了一个简化的SQL,它正在工作,我试图将其转换为 – Andrew