如何在Laravel Fluent中进行类型转换?

时间:2015-03-25 20:10:21

标签: php mysql laravel fluent

如何进行类型转换以比较Laravel Fluent中的值?例如,如果我有以下MySQL:

SELECT * from table1 WHERE  CAST(`values` AS SIGNED) > $myVar

这是我在Fluent中写完上述内容之后的目前:

$query = DB::connection('mysql')->table('table1')
    ->where('values', '>', $myVar);

目前,数据库将此视为字符串。由于其他原因,表中的列需要保留为varchar。如何在Laravel Fluent中为此特定查询执行类型转换?

2 个答案:

答案 0 :(得分:5)

未经测试,但我相信这应该有效:

$query = DB::connection('mysql')->table('table1')
    ->where(DB::raw('CAST(values AS SIGNED)'), '>', $myVar);

答案 1 :(得分:1)

另外

$query= DB::connection('mysql')
            ->table('table1')
            ->whereRaw('CAST(values AS SIGNED) > '.$myVar);

作品