【发布时间】:2018-09-19 06:34:06
【问题描述】:
我想从联合表中获取最小值。
如下所示的 MySQL 查询。
SELECT MIN(PromisedDate)
FROM (SELECT PromisedDate FROM JobWorkOrder WHERE `PromisedDate` IS NOT NULL
UNION
SELECT ScheduledDate AS PromisedDate FROM JobPhase WHERE `ScheduledDate` IS NOT NULL) ScheduledTable;
此查询的结果是 JobWorkOrder 和 JobPhase 表中 PromisedDate 和 ScheduledDate 的最小值。
所以我构建了一个如下所示的 Laravel 查询。
$JobPhase = JobPhase::where('ScheduledDate', '<>', null)
->select('ScheduledDate AS PromisedDate');
$minDate = JobWorkOrder::where('PromisedDate', '<>', null)
->select('PromisedDate')
->union($JobPhase)
->min('PromisedDate');
但是我得到了错误的结果。 结果是
(SELECT MIN(`PromisedDate`) FROM `JobWorkOrder` WHERE `PromisedDate` IS NOT NULL)
union
(SELECT `ScheduledDate` AS `PromisedDate` FROM `JobPhase` WHERE `ScheduledDate` IS NOT NULL)
如何构建 Laravel 查询?
【问题讨论】:
标签: laravel-5