如何在Eloquent中使用DATEDIFF函数?

5

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

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

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

在纯SQL中应该是这样的:

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

我该如何使用 Eloquent 来实现这个功能?
1个回答

16

你可以使用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"))
))

谢谢Abishek!这是正确的解决方案。 - Maciej Płocki

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接