ich, wie viele Datensätze aus einer anderen Tabelle in der gleichen SELECT-Anweisung zählen möge, verwendet i Left beitreten und in der select-Anweisung setzen i count (ag. *) siehe Beispiel:
count (*) in mysql Rückkehr nur einen Datensatz
$q = Doctrine_Query::create()
->select("a.answer_id,a.date_added , count(ag.content_id) AS agree_count")
->from('Answer a')
->leftJoin("a.Agree ag ON a.answer_id = ag.content_id AND ag.content_type = 'answer' ")
->where('a.question_id= ? ', $questionId)
Aber es ist nur der erste Datensatz zurückkehrt, kann ich das beheben? oder um einen anderen Tisch zu machen und ihn nur zum Zählen zu machen?
Sie haben eine Where-Klausel, die 'question_id' behebt. Sind Sie sicher, dass mehr Zeilen zu erwarten sind? – Sirko
Auf welchen Output hofften Sie? Möchten Sie, dass das Attribut "accept_count" die gesamte Liste zählt und auch in jeder einzelnen Zeile enthalten ist? – Dan