投放查询构建器laravel

Nev*_*ack 3 laravel laravel-query-builder

我想cast在查询生成器laravel中订购

因为我pricevarchar类型

所以当它排序时...结果远远超出我想要的...

我的脚本是这样的

DB::table('test')->where(...)->orderBy('price')->get();
Run Code Online (Sandbox Code Playgroud)

我已经尝试过这样的事情

$query = CAST(price AS DECIMAL(10,2)) DESC;
DB::table('test')->where(...)->orderBy($query)->get();
Run Code Online (Sandbox Code Playgroud)

如何转换OrderBy查询生成器,以便对pricedesc 进行排序

Jef*_*eff 8

尝试一下orderByRaw()

$query = "CAST(price AS DECIMAL(10,2)) DESC";
DB::table('test')->where(...)->orderByRaw($query)->get();
Run Code Online (Sandbox Code Playgroud)

  • 尝试`$ query =“ CAST(price AS DECIMAL(10,2))DESC”;`带引号。 (2认同)