Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Activerecord:Wyrywaj konkretne kolumny i liczbę asocjacji

Użyj wybranego zapytania

Account.
  joins(schedules: :impressions).
  select("accounts.name as account_name, 
          schedules.date as schedule_date, 
          schedules.summary as schedule_summary, 
          count(impressions.id) as schedule_impression_count" ).
  group("accounts.name,schedules.date,schedules.summary") 

Należy to zrobić w jednym zapytaniu, wtedy obiekty odpowiedzą na alias kolumny, taki jak schedule_date i schedule_impression_count

Jeśli potrzebujesz użyć tych obiektów dla innych danych w tym samym widoku, to Account.eager_load(schedules: :impressions) powinien również działać i wykona jedno zapytanie.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Nie można zmienić kolumny używanej w ograniczeniu klucza obcego

  2. Importowanie danych Excela do bazy mysql

  3. Błąd MySQL jako argument dla ! postać

  4. Problem z utrzymywaniem pliku java.util.Date w MySql przy użyciu Hibernate

  5. Powiązanie parametrów z zapytaniem mysql