Yii CDbCriteriaの一般的なメソッドのまとめ。
$criteria = 新しい CDbCriteria
;$criteria->addCondition("id=1"); //クエリ条件、つまり id = 1
$criteria->addInCondition('id', array(1,2,3,4,5)) //ID IN (1,2,3,4,5,) を表します。
$criteria->addNotInCondition('id', array(1,2,3,4,5));//上記とまったく同じですが、IN ではありません
$criteria->addCondition('id=1','OR');//これは OR 条件です。複数の条件がある場合、条件は AND ではなく OR になります。
$criteria->addSearchCondition('name', 'category');//実際に表す検索条件。 。ここでの名前は「%category%」のようなものです
$criteria->addBetweenCondition('id', 1, 4);//1 と 4 の間
$criteria->compare('id', 1); //このメソッドは非常に特殊で、パラメーターに従って自動的に addCondition または addInCondition に処理されます。
//つまり、2番目のパラメータが配列の場合、addInConditionが呼び出されます
/**
* 変数を渡す
$criteria->addCondition("id = :id");
$criteria->params[':id']=1;
/**
* いくつかのパブリック変数
*/
;
$criteria->with = 'xxx' //関係を呼び出す
;
$criteria->limit = 10; //データを1つ取得、0未満の場合は何も処理しない
$criteria->offset = 1; //両者を組み合わせると、limit 10 offset 1 を意味します。制限 1,10
$criteria->group = 'グループ基準';
$criteria->having = '基準を持っている';
$criteria->distinct = FALSE; //ユニークなクエリですか
複数のテーブルクエリ
$criteria=新しい CDbCriteria;
$criteria->join='Client.id=Invoice.clientId でクライアントを左結合'; $criteria->condition='Client.businessId='. Yii::app()->userInfo->business;
興味がありそうな記事
Yii ルール共通の確認ルールメモ
true