7

Zend Framework 2 では、tableGateway を使用して、次の SQL クエリを実行したいと考えています。

  SELECT categories.category_name, COUNT(forums.forum_id)
    FROM categories LEFT JOIN forums
      ON categories.category_id = forums.category_id
GROUP BY categories.category_name;

問題は、私が単にそれを行う方法がわからないことです。たとえば、使用方法は知っていますが、 and を$select->join()実行する方法もわかりません。COUNTGROUP BY

SQL に必要なもの: 2 つのテーブルがあります。categoriesforums。すべてのカテゴリを選択したいcategoriesのですが、カテゴリごとにフォーラムの数が必要です。

4

2 に答える 2

1

あなたのクエリは正しいようです。データベースで直接実行すると、期待どおりに動作しますか。

アダプターを使用して生のクエリを実行するだけでよいと思います。

$sql = "SELECT categories.category_name, COUNT(forums.forum_id) FROM categories LEFT JOIN forums ON     categories.category_id = forums.category_id GROUP BY categories.category_name";

$statement = $this->adapter->query($sql);
return $statement->execute();
于 2013-06-01T16:33:54.023 に答える