包含整数的varchar中的OrderBy

时间:2019-03-19 08:43:41

标签: php mysql laravel-5

我有一列“ varchar”类型的列,但它由整数组成。

当我使用orderBy进行查询时,结果如下。

10
11
12
9

我已经实现了orderBy,如下所示:

->orderBy("stdmap.prvid");

当我直接在phpmyadmin中以stdmap.prvid + 0的顺序运行查询时,它给了我正确的结果。但是我不确定如何在laravel查询中添加+0。

3 个答案:

答案 0 :(得分:1)

尝试一下:

->orderBy(DB::raw("stdmap.prvid+0"));

应该可以。

答案 1 :(得分:1)

orderByRaw怎么样?

->orderByRaw('stdmap.prvid+0 asc')

答案 2 :(得分:0)

订购结果集合

$unorderedThings = Thing::orderBy('id')->get();
$orderedThings = $unorderedThings->sort();

希望这会有所帮助