Rails ActiveRecord Führt Gruppen-, Summen- und Zaehler in einer Abfrage aus

8

Ich habe zwei Tabellen,

%Vor%

und

%Vor%

Ich möchte die Gesamtzahl der Aufträge in jedem Typ (Anzahl) und den Gesamtwert dieser Aufträge pro Typ (Summe) erhalten

Ich kann diese einzeln mit

bekommen %Vor%

und

%Vor%

Ich möchte diese in einer Abfrage ausführen, die dem folgenden SQL entspricht

%Vor%

Die Abfrage sollte auch das vollständige Objekt OrderType zurückgeben, damit ich den Namen in meiner Ansicht anzeigen kann

    
Andrew Murphy 26.11.2014, 09:53
quelle

1 Antwort

9

Da ActiveRecord mehrere Aggregationsfunktionen in derselben Abfrage nicht unterstützt, müssen Sie ein wenig Roh-SQL ausführen, um dies zu erreichen.

%Vor%

Der hier zu beachtende Punkt ist, dass Sie eine vorhandene Spalte in OrderType als Alias ​​für Ihre aggregierten Spalten verwenden müssen. Hier erhalten Sie auch das OrderType-Objekt.

Um auf das Ergebnis zuzugreifen:

%Vor%     
emaillenin 06.02.2016 13:24
quelle