ホーム > Web開発関連

symfonyでsqlを節約


doSelectJoinXXX()

っていう関数を使うと 2 つのテーブルを join した結果を SQL 1 本で取得できる。
この関数は schema.yml で外部参照を設定すると自動で生成される。

第18章 - パフォーマンス

データベースへの必要なクエリの回数は11回ではなく1回なので速くなります。

// アクション内で
$this->articles = ArticlePeer::doSelectJoinAuthor(new Criteria());

// doSelectJoinAuthor()によって発行されたデータベースへのクエリ
SELECT article.id, article.title, article.author_id, ...
author.id, author.name, ...
FROM   article, author
WHERE  article.author_id = author.id

// テンプレートにおいて(変わらず)
<ul>
    <li>getTitle() ?&gt;,
written by getAuthor()-&gt;getName() ?&gt;</li>
</ul>

コメント:0

コメントフォーム
入力した情報を記憶する

トラックバック:0

この記事のトラックバック URL
http://www.sylvan-l.net/b/2009/02/25/symfony%e3%81%a7sql%e3%82%92%e7%af%80%e7%b4%84/trackback/
トラックバックの送信元リスト
symfonyでsqlを節約 - sylvan より

ホーム > Web開発関連 > symfonyでsqlを節約

ぴくちゃー
ブログパーツ

ページの上部に戻る