(CakePHP2.x) findで以上や重複した行をまとめる(DISTINCT)を指定する方法

CakePHP

CakePHP

CakePHPのfindはとても便利で

オプションで色々指定する(groupとか)ことで

SELECT文を変えられたりします。

しかし、以上や重複した行をまとめる(DISTINCT)は

オプションにないので

それらの指定の仕方です。

スポンサードリンク

以上を指定する場合

$this->Model->find('all', array('conditions', array(
                'created >=' => '2013-09-01'
)));

指定するカラム名の後ろに条件を入れてあげます。

上記だと2013年9月1日以上のデータが出てきます。

重複した行をまとめる(DISTINCT)

$this->Model->find('all', array('fields', array(
                'DISTINCT name', 'age', ・・・
)));

表示させたいフィールドの最初のものにDISTINCTを付けてあげます。

DISTINCTに関しては別にGROUP BYのオプションがあるので

こちらを使ってもいいかと思います。

CakePHP2 実践入門 (WEB DB PRESS plus)

新品価格
¥3,110から
(2015/1/27 23:08時点)

スポンサードリンク

コメントを残す

サブコンテンツ

このページの先頭へ