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

Laravel eloquent създател на заявки - Сумиране с група по отношение

В генерирания SQL трябва да изберете колоната, по която групирате, и трябва да извикате get() след groupBy или иначе ще извикате groupBy на колекцията, а не на обекта на конструктора на заявки. Така че трябва да можете да направите:

Transaction::selectRaw('transactionType.category, sum(amount) as amount')
->with('transactionType')
->groupBy('transactionType.category')
->get();

Или по-малко красноречив

DB::table('transaction')
->join(
    'transaction_type',
    'transaction_type.id',
    '=',
    'transaction.transaction_type_id'
)->selectRaw('transationType.category, sum(amount)')
->groupBy('transactionTyle.category')
->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. mySQL Връща първите 5 от всяка категория

  2. secure-file-priv Празен набор

  3. Преброяване на броя на групираните редове в mysql

  4. Кои символи всъщност са способни да причинят SQL инжекция в MySQL?

  5. SQL max() връща само 1 ред, ако колоната има няколко максимални стойности