php - 如何在 Eloquent 中使用 DATEDIFF 函数?

标签 php sql laravel eloquent

这是我选择预订的代码:

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 做到这一点?

最佳答案

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

关于php - 如何在 Eloquent 中使用 DATEDIFF 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18077709/

相关文章:

php - Paypal 访问 - SSL 证书 : unable to get local issuer certificate

php - 当代码中未指明时,为什么我的代码输出包含额外的 <br> 和 <p> 标记?

mysql - 有两个条件的两个字段的选择

javascript - 拉拉维尔 : php artisan route:list is displaying html tags

php - Paypal 结帐 : LiveEnvironment class not found

php - PHP 什么时候需要在创建类之前查看类?

sql - 关于此 SQL 语句的 ROLLBACK TRANSACTION 的任何想法

sql - Ruby Rails Postgis - 查找多边形中的所有点

php - 如何检查 key 是否存在于Redis中?

php - Laravel Route::group 传递错误的变量