我正在尝试对laravel中的查询(到postgresql数据库)进行排序,以便空值是最后一个。
订单的代码是

$dbObj->orderBy($aSearchFilters["sidx"],$aSearchFilters["sord"]);

我找到了How to sort NULL values last using Eloquent in Laravel但是所有这些都有一个固定的列正在被排序。它们是不是通过不引入sql注入问题而让NULLS最后添加到订单中的一种方法?

最佳答案

orderByRaw是一种注射保护方法。在下面的示例中,我按可空字段排序。最大的field排在第一位,NULLs排在最小的field之后。

Posts::where('type', 'fix')
    ->orderByRaw('field DESC NULLS LAST')

关于php - 订单空值最后使用laravel,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33747562/

10-15 19:49