laravel query builder如何仅从dateTime字段中检索年份和月份

时间:2017-10-04 10:26:32

标签: laravel-5 eloquent query-builder laravel-query-builder

我想从数据库中的dateTime字段中选择只有月份和年份我试过这个

$historyMonth = App\Models\HistoryCostEstimation::where('user_id',$id)->orderBy('created_at','desc')->toDateString('Y-m')->get();

但它有效吗?

1 个答案:

答案 0 :(得分:1)

由于您总是需要这种格式,因此您可以在Accessor模型中定义HistoryCostEstimation,如下所示:

public function getCreatedAtAttribute($date) { 
    return Carbon\Carbon::createFromFormat('Y-m-d H:i:s', $date)->format('Y-m'); 
}

您可以在不进行任何转换的情况下查询记录:

App\Models\HistoryCostEstimation::where('user_id',$id)
                                  ->orde‌​rBy('created_at','de‌​sc')
                                  ->get();