Mysql
 sql >> база данни >  >> RDS >> Mysql

Laravel Eloquent получава резултати, групирани по дни

Вярвам, че намерих решение за това, ключът е функцията DATE() в mysql, която преобразува DateTime само в Date:

DB::table('page_views')
      ->select(DB::raw('DATE(created_at) as date'), DB::raw('count(*) as views'))
      ->groupBy('date')
      ->get();

Това обаче всъщност не е решение на Laravel Eloquent, тъй като това е необработена заявка. Следва това, което измислих в синтаксиса на Eloquent. Първата клауза където използва въглеродни дати за сравнение.

$visitorTraffic = PageView::where('created_at', '>=', \Carbon\Carbon::now->subMonth())
                            ->groupBy('date')
                            ->orderBy('date', 'DESC')
                            ->get(array(
                                DB::raw('Date(created_at) as date'),
                                DB::raw('COUNT(*) as "views"')
                            ));


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQLite в Android:очакват се външни ключове и <table constraint>

  2. Изключение на mySQL:Не може да се свърже с нито един от посочените хостове на MySQL. чрез C#

  3. Jquery autocomplete и PHP:попълване на поле за въвеждане с данни от mySQL база данни въз основа на избраната опция в полето за автоматично довършване

  4. Конвертирайте BufferedInputStream в изображение

  5. MySQL LOAD DATA INFILE номер на магазина