2009-05-31 2 views

Antwort

0

Es stellt sich heraus, dass Sie withColumn verwenden, um das richtige Ergebnis zu erhalten:

$result = DbFinder::from('Bird') 
    ->withColumn('count(Bird.Id)', 'total_birds') 
    ->groupBy(species') 
    ->find(); 
1

Ich bin kein Experte auf DBFinder aber es sieht wie folgt aus sollte

$result = DbFinder::from('Bird')-> 
    groupBy('species')-> 
    select(array('species', 'count(*) cnt'))-> 
    find(); 

Edited arbeiten Code ändern

+0

Das gibt mir zurück: "Unbekannte Modellklasse Arten". Es scheint, dass with() eine Modellklasse und nicht nur einen Spaltennamen zu haben scheint. Wie gebe ich nur einen Spaltennamen an? – Failpunk

+0

mein schlechtes. mit ist für die Verwendung mit Joins. Wenn ein Join nicht explizit gemacht wird, wird es trotzdem gemacht. bearbeiteter Code oben. Ich konnte wirklich keinen einfacheren Weg finden, es in der Dokumentation zu tun, aber es sieht so aus als ob es funktionieren sollte –

+0

Danke für die Hilfe, jetzt gibt es mir: "Berechnete Spalten, die mit sfPropelFinder :: withColumn() hinzugefügt wurden, benötigen einen Alias als zweiter Parameter ". Ich habe versucht, überall Aliase hinzuzufügen, aber ich bin mir nicht sicher, worauf es in dieser Situation ankommt. – Failpunk

Verwandte Themen