如何在Eloquent中使用DATEDIFF功能?

时间:2013-08-06 10:31:52

标签: php sql laravel eloquent

以下是我选择预订的代码:

Reservation::select(array(
    'obj_id', 
    'name', 
    'surname',
    'date_from',
    'date_to', 
    'days',
    'status',
    'slug',
    'payable'
));

我的问题是如何更改'天'以在date_fromdate_to之间获得真正的差异?我在数据库中没有'days'列,我只想在SQL查询中计算它们。

在纯SQL中应该是这样的:

SELECT DATEDIFF('date_from, date_to) AS Days FROM RESERVATIONS;

我怎样才能使用Eloquent?

1 个答案:

答案 0 :(得分:11)

您可以使用DB::raw

Reservation::select(array(
            'obj_id', 'name', 'surname',
            'date_from', 'date_to', 
            'days',
            'status', 'slug', 'payable', 
            DB::raw("DATEDIFF(date_from,date_to)AS Days"))
))