Heim  >  Artikel  >  php教程  >  Yii-Modelloperationskriterien-Suchdatenbankmethode

Yii-Modelloperationskriterien-Suchdatenbankmethode

高洛峰
高洛峰Original
2016-12-30 16:00:441018Durchsuche

Das Beispiel in diesem Artikel beschreibt die Methode zum Durchsuchen der Datenbank anhand von Kriterien für den Betrieb des Yii-Modells. Teilen Sie es wie folgt mit allen als Referenz:

Datenmodell-Suchmethode:

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,
    ),
  ));
}

Definition der Vergleichsoperation:

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

Definieren Sie das zu durchsuchende Feld:

//查找的结果
$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;),

Definieren Sie die Suche Bedingungen:

//定义条件
$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;),

JOIN-Tabellenabfrage

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

Ergebnis der Bestellabfrage Sortierung:

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

Gruppenergebnisgruppierung:

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

mit Filter Gruppierung Anzahl der Ergebnisgruppen:

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

Ich hoffe, dass dieser Artikel für jedermann beim PHP-Programmdesign basierend auf dem Yii-Framework hilfreich sein wird.

Weitere Artikel zu den Betriebskriterien des Yii-Modells und zum Auffinden der Datenbank finden Sie auf der chinesischen PHP-Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn