[ロ] Symfony でINNER JOIN

このエントリーをはてなブックマークに追加
はてなブックマーク - [ロ] Symfony でINNER JOIN
Facebook にシェア
[`yahoo` not found]
[`livedoor` not found]
[`friendfeed` not found]
[`tweetmeme` not found]

Symfony で INNER JOIN。簡単簡単。単なる備忘録です。


1:    $c = new Criteria();
2:    $c->addJoin(TablenameaPeer::TABLENAMEB_ID, TablenamebPeer::ID, 'INNER JOIN');
3:    $c->add(TablenamebPeer::ID, 3);
4:    $c->addDescendingOrderByColumn(TablenameaPeer::UPDATED_AT);
5:    $result = TablenameaPeer::doSelect($c);
6:
7:    foreach($result as $r) {      print_r($r);
8:    }


2行目のaddJoin($reft_column, $right_column, $option);がミソ。$optionのところにLEFT JOIN/JOIN OUTER JOINとか書けばINNER JOIN以外もいける。
いろいろ説明書いてみようかと考えたけどSQL見たほうが早いともう。上記で出来上がるSQLは下記のとおり(のはず。試してない。汗)


SELECT * FROM tablenamea INNER JOIN tablenameb ON tablenamea.tablenameb_id = tablenameb.id WHERE tablenameb.id = 3 ORDER BY tablenamea.updated_at;


oder by句はaddDescendingOrderByColumn()でOK。これくらいで一通りのSQLは組めるんじゃないかなぁ。
あとはlimit句とcount()くらいかな。

Popular Posts:

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

*