【CakePHP】findでMySQLのBETWEEN句を使う方法
2019/03/01
タイトルの通り、CakePHPのfind()時にMySQLのBETWEENを使う方法です。
CakePHPでBETWEEN
通常のSQL
1 2 3 4 5 6 |
SELECT 列名 FROM テーブル名 WHERE 列名 BETWEEN 値1 AND 値2; |
これで、値1~値2の範囲の値の場合は真を返します。
CakePHPの場合
1 2 3 4 |
$conditions = array( 'Order.id >=' => 10, 'Order.id <=' => 20, ); |
SQLでは BETWEEN句 が必要になりますが、CakePHP では BETWEEN そのものは書かずに「>=」「<=」で指定します。
もしくは、下記の書き方でもOKです。
1 2 3 4 5 6 7 |
$params = array( 'conditions' => array( 'Order.id BETWEEN ? AND ?' => array(10, 20) ) ); $this->Model->find('all', $params); |