2016-02-12 7 views
1

У меня есть проблема с поиском по существующей дате.Поиск по дате Laravel 5.2

В модели:

$date = '2016-01-14'; 
public static function getByDate($date) 
{ 
    $query = self::select('date', DB::raw('SUM(test_count) as test')) 
     ->whereDate('date', '=', $date) 
     ->groupBy('date') 
     ->orderBy('date', 'ASC') 
     ->get(); 
} 

Но я не получил результата, потому что этот код создает SQL:

select `date`, SUM(test_count) as test from `test_table` where date(`date`) = 2016-01-14 group by `date` order by `date` asc limit 1 

Не цитируемый вокруг даты => 2016-01-14

Как это исправить?

Я пытаюсь использовать whereRaw с Params, например:

return $query->whereRaw("date= ?",[$date]); 

, но это не помогло ...

ответ

0

Вы должны изменить ->whereDate('date', '=', $date) к этому:

->where('date', '=', $date) 

Или вы можете использовать это:

->whereDate($date) 

Итак, очевидно, что вы можете использовать либо ->whereDate($date), либо ->where('date', '=', $date), потому что whereDate - это динамический метод, и в этом случае он станет: where('date', '=', $date).

Смежные вопросы