(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

CakePHP2実践入門 (WEB+DB press plusシリーズ) [ 安藤祐介 ]

価格:3,110円
(2019/9/21 06:25時点)
感想(0件)

スポンサードリンク

コメントを残す

サブコンテンツ

このページの先頭へ