我试图在laravel中对查询(到postgresql数据库)进行排序,以便空值为最后一个。
订单的代码是
$dbObj->orderBy($aSearchFilters["sidx"],$aSearchFilters["sord"]);
我找到How to sort NULL values last using Eloquent in Laravel,但所有这些都有一个正在排序的固定列。他们是否通过不引入sql注入问题将NULLS LAST添加到订单中?
答案 0 :(得分:3)
orderByRaw
是一种注射保护方法。在以下示例中,我按可空字段排序。最大的field
首先出现,NULLs
位于最小的field
之后。
Posts::where('type', 'fix')
->orderByRaw('field DESC NULLS LAST')