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

КОАЛЕСИРАНЕ в laravel

Е, ОП не беше много полезна, но ще пробвам! Предполагам, че votes таблицата съдържа действителните гласове, подадени от потребителите за елементите. Това означава, че ако даден елемент не е получил никакъв глас, тогава този идентификатор (masterItemId ) не съществува в votes таблица.

Това означава, че таблицата с гласовете трябва да бъде оставена свързана в таблицата с основни елементи на masterItemId поле. Ще извикам основната таблица с артикули:items и приемете, че има itemId поле, което съответства на masterItemId полето в votes маса. В SQL термини:

select items.itemId, ifnull(sum(votes.votes),0) as votesSum
from items left join votes on items.itemId=votes.masterItemId
where votes.voteDate between ... and ... and <other conditions>
group by items.itemId

Не съм запознат с Laravel, но ще ви трябва нещо подобно, но не го третирайте като copy-paste код:

$multipleitems = DB::table('items')
                 ->leftJoin('votes','items.itemId','=','votes.masterItemId')
                 ->select('items.itemId',DB::raw('ifnull(sum(votes.votes),0) as voteSum'))
                       ->whereBetween('votes.voteDate',array($startDate,$endDate))
                       ->where($condition)
                       ->groupBy('items.temId')
                       ->get();



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. mysqli - Наистина ли трябва да направя $result->close(); &$mysqli->close();?

  2. запишете резултатите от sql заявка във файл в mysql

  3. Има ли най-добри практики/последователен начин за актуализиране на поле на база данни, което съдържа хранилище ключ-стойност на хеш?

  4. Инсталацията на MySQL за Visual Studio е неуспешна, код за грешка 1603

  5. Как да настроя часовата зона xampp mysql и apache?