我需要在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