Verwenden CActiveRecord, um die Summe einer Spalte
1) gibt es eine Möglichkeit, um die Summe von einer integer-Spalte mit CActiveRecord in Yii?
Sonst werde ich haben, um die Spalte Daten und die Summe auf der server-Seite.
2) ich nehme an auch immer die Summe, die über eine sql-Abfrage schneller ist, als sich die Spalte von Daten und Summe es sich auf dem server mit php. Wenn es um performance geht, sollte der mysql-server belästigt werden, zu tun, ein solcher Betrieb oder lass mal den php-server zu kümmern.
Bitte beraten.
- Vielleicht sollte die Frage sein, wie die Abfrage für die Summe einer Spalte in der DB statt.
$sum = Yii::app()->db->createCommand("SELECT SUM('theColumnOfData') as 'sum' FROM 'theTableOfData'")->queryScalar();
Du musst angemeldet sein, um einen Kommentar abzugeben.
1) ich weiß nicht so denkt, und es macht nicht wirklich Sinn macht CAvtiveRecord, die Art und Weise, es sei denn, Sie möchten, um eine STAT-Bezug. Lassen Sie uns sagen, Sie haben eine "Frage" - Modell und einer "Antwort" - Modell und die Antwort gehört zu einer Frage. Sie konnte eine statistische relation und implementieren es in "Frage" wie diese:
Dann die Informationen abrufen: $Frage->answerSum; wobei $Frage ist eine Instanz der Frage der Beziehungen erklärt wie oben.
2) Es ist eine Frage der Menge der Daten. Ich würde persönlich wählen, SQL, denn es ist in der Lage Umgang mit einer größeren Menge von Datensätzen, und ist dadurch in Zukunft sparen.
Versuchen Sie es
Im Modell sollten vorhanden sein Feld Summe