PHP逆引き大全 516の極意

データベースの極意 - Tips418 関連するテーブルを条件句で絞り込む

登録タグ
PHP
Icon comment count 0
Icon stock count 0

6-4Propelの利用 基本編Tips418 関連するテーブルを条件句で絞り込む

Level2

PointModelCriteria::use*Query()を利用する

あるテーブルに関連するテーブルを条件句で絞り込むには、以下のように記述します。

$books = BookQuery::create()
  ->usePublisherQuery()
    ->where('Publisher.Address LIKE ?','大阪%')
  ->endUse()
  ->find();

これは、booksテーブルに関連するpublishersテーブルのaddressカラムに「大阪」を含むレコードを抽出する例です。usePublisherQuery()とendUse()の間で、where()メソッドやfilterBy*()メソッドを呼び出します。

結果として、以下のようなSQLが生成されます。

SELECT books.* FROM `books` LEFT JOIN publishers ON (books.PUBLISHER_ID=publishers.ID) WHERE publishers.ADDRESS LIKE '大阪%'
リスト141

出典情報

Medium

PHP逆引き大全 516の極意

  • 著者: 大家 正登, 茂木 健一, 鮫島 康浩, 谷中 志織

コメント

    コメントはありません