CakePHP Note (v1.3) > モデル > データの取得 > 検索条件を組み立てる

検索条件を組み立てる

検索条件は、テキストまたは配列で指定します。カラム名はテーブルが結合されるケースを想定して'Post.title'のように'モデル名.カラム名'とするのが良いです。

テキストで指定する

$option['conditions'] = "Post.title = 'cake' ";
$this->Post->find('all',$option); 

配列で条件を組み立てる

検索条件の基本はカラム名をキーにした配列を作っていきます。

$option['conditions'] = array('Post.title' =>'cake');
$this->Post->find('all',$option); 

演算子

<>, LIKE, BETWEEN, REGEXなどの演算子をカラム名の後に置いて使用できます。

array("Post.title <>" => "cake")
array("Post.created >=" => "2009.1.1")
array("Post.level BETWEEN ? AND ?" => array(3,5))

IN演算子

値を配列で渡すとIN演算子が使用されます。

array("Post.title" => array("cake","cola","potate"))

論理演算子

AND, OR, NOT, XOR,その他の論理演算子を使用できます。

AND

配列を増やせばAND検索になります。

array
(
"Post.title" => "cake",
"Post.subtitle" => "Framework"
)

OR, NOT, XOR

OR, NOT, XORいずれかのキーに複数の条件を与えます。小文字でも大丈夫です。

array
("or" =>
    array
            (
            "Post.title" => "cake",
            "Post.subtitle" => "cake"
            )
)

CakePHP Note (v1.3)

Index