sách gpt4 ăn đã đi

mysql - 当该表中的列不可用时如何按 ASC 进行排序

In lại Tác giả: Walker 123 更新时间:2023-11-30 22:19:06 28 4
mua khóa gpt4 giày nike

我的 Laravel 查询

$items = TypeServices::whereIn('id', $serviceIdEvent)
->select('id', 'code', 'name', 'min_price', 'max_price',
DB::raw('(select(priority) from priority WHERE priority.map_id = type_service.id AND priority.map_type_id = ' . $pageType . ' AND priority.occasion_id = ' . $occasionId . ') as priority'))
->orderBy(DB::raw('ISNULL(priority), priority'), 'ASC');

我正在从另一个名为 priority 的表中获取优先级。(我在 priority 表中也有 priority 列)

我在优先级表中保存了服务表的详细信息,但是当我第一次对某些服务进行优先级排序时,直到现在还没有优先级的服务会排在列表的第一位。

我希望那些直到现在还没有优先考虑的服务最终会出现。

câu trả lời hay nhất

在这种情况下,首先您应该使用 join。那么您不需要通过以下方式订购任何其他东西:

$items = TypeServices::whereIn('id', $serviceIdEvent)
->select('id', 'code', 'name', 'min_price', 'max_price', 'priority')
->join('priority', function ($join) use ($pageType, $occasionId) {
$join->on('priority.map_id', '=', 'type_service.id');
$join->on('priority.map_type_id', '=', DB::raw($pageType));
$join->on('priority.occasion_id', '=', DB::raw($occasionId));
})
->orderBy('priority');

关于mysql - 当该表中的列不可用时如何按 ASC 进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37225887/

28 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress