Maison >php教程 >PHP开发 >Méthode de base de données de recherche de critères de fonctionnement du modèle Yii

Méthode de base de données de recherche de critères de fonctionnement du modèle Yii

高洛峰
高洛峰original
2016-12-30 16:00:441086parcourir

L'exemple de cet article décrit la méthode de recherche dans la base de données à l'aide de critères pour le fonctionnement du modèle Yii. Partagez-le avec tout le monde pour votre référence, comme suit :

Méthode de recherche du modèle de données :

public function search()
{
  // Warning: Please modify the following code to remove attributes that
  // should not be searched.
  $criteria=new CDbCriteria;
  $criteria->compare('id',$this->id);
  $criteria->compare('title',$this->title,true); //支持模糊查找
  $criteria->compare('content',$this->content,true); //支持模糊查找
  $criteria->compare('type',$this->type);
  $criteria->compare('user',$this->user,true); //支持模糊查找
  $criteria->compare('status',$this->status);
  $criteria->compare('create_data',$this->create_data,true); //支持模糊查找
  return new CActiveDataProvider($this, array(
    'criteria'=>$criteria,
    'pagination'=>array(
      'pageSize'=>50,
    ),
  ));
}

Définition de l'opération de comparaison :

$criteria->compare(&#39;create_time&#39;,&#39;<=&#39;.$this->endtime),
//创建早间小于等于指定时间

Définir le champ à rechercher :

//查找的结果
$criteria->select = &#39;id,title,content,author,status,createtime&#39;,
//也可以以下一种方式定义
$criteria->select = array(&#39;id&#39;,&#39;title&#39;,&#39;content&#39;,&#39;author&#39;,&#39;status&#39;,&#39;createtime&#39;),

Définir la recherche conditions :

//定义条件
$criteria->select = &#39;status=1&#39;,
//添加匹配
$criteria->compare(&#39;title&#39;,$this->title,true),
//添加条件 $condition可以是数组,也可以是字符串,and可以省略
$criteria->addCondition($condition,&#39;and&#39;),
//添加IN条件 $column为字段名
$criteria->addInCondition(string $column, array $values, string $operator=&#39;AND&#39;)
//添加notin条件
$criteria->addNotInCondition(string $column, array $values, string $operator=&#39;AND&#39;)
//添加like条件
$criteria->addSearchCondition(string $column, string $keyword),
//添加Between条件
$criteria->addBetweenCondition(string $column, string $valueStart, string $valueEnd, string $operator=&#39;AND&#39;),

Requête de table JOIN

$criteria->join = &#39;LEFT JOIN users ON users.id=authorID&#39;,

résultat de la requête de commande tri :

$criteria->order = &#39;createtime DESC&#39;,

regroupement des résultats du groupe :

$criteria->group = &#39;projectID, teamID&#39;,

avoir un filtre grouping Nombre de groupes de résultats :

$criteria->having = &#39;SUM(revenue)<50000&#39;,

J'espère que cet article sera utile à la conception de programmes PHP de chacun basés sur le framework Yii.

Pour plus d'articles liés aux critères de fonctionnement du modèle Yii et à la façon de trouver la base de données, veuillez faire attention au site Web PHP chinois !

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn