ホームページ > バックエンド開発 > PHPチュートリアル > Yii2.0 中国語開発ガイド - Where 条件クエリの完全な分析

Yii2.0 中国語開発ガイド - Where 条件クエリの完全な分析

WBOY
リリース: 2016-06-13 12:23:34
オリジナル
1099 人が閲覧しました

Yii2.0 中国語開発ガイド - Where 条件付きクエリの完全な分析

Yii モデルでクエリを実行する場合、where は不可欠です。
Where メソッドは

  1. static where( $condition )


として宣言されます。ここでパラメータは$condition 型は文字列または配列です

1. 文字列
文字列が最も単純です。

    $condition = 'name='zhidemy.com' and age>10';
2. 配列

配列の場合は、 2 文章の形式。

    名前と値の形式の辞書配列: ['column1' => value1, 'column2' => value2, ...]
  • 論理演算子の形式: [operator, operand1 , operand2, ...]
最初の書き方:

value が文字列または数値などの場合、生成される条件文の形式は
column1= です。 value1 AND column2=value2 AND ....

['type' => 1, 'status' => 2]

//

(type = 1) AND (status = 2)

を生成します。値が配列の場合、SQL の
INStatement;

['id' => [1, 2, 3], 'status' => 2]

//Generate

(id IN (1, 2, 3)) AND (status = 2)

値が Null の場合、Is Null

ステートメントは次のようになります。生成される。

['status' => null]

//

ステータス IS NULL を生成

2 番目の書き方では、異なる演算子に基づいて異なる SQL 条件が生成されます。



      および:
    • は AND を使用してすべてのオペランドを接続します。例:
      ['and', 'id=1', 'id=2']

      //

      id=1 AND id=2 を生成します。

      オペランドも配列の場合、
      ['and', 'type=1' などの形式の文字列に変換されます。 , ['or ', 'id=1', 'id=2']]

      //Generate

      type=1 AND (id=1 OR id=2)

      注: このメソッドは参照またはエンコードしません。 または:
    • は、オペランドの接続に OR が使用される点を除いて、 および に似ています。
    • between:
    • 最初のオペランドは列の名前で、2 番目と 3 番目のオペランドは範囲の最小値と最大値です。例:
      ['between', 'id', 1, 10]

      //

      id BETWEEN 1 AND 10

      を生成します。

      not between:
    • between と似ています。
    • in:
    • 最初のオペランドは列または DB 式で、2 番目のオペランドは
      ['in', ' id などの配列です。 ', [1, 2, 3]]

      //Generate

      id IN (1, 2, 3)

      注: このメソッドは列を参照され、配列内の値もエンコードされます。 not in:
    • は、上記の in と似ています。
    • like:
    • 最初のオペランドは列または DB 式で、2 番目のオペランドは
      ['like' , ' などの文字列または配列です。 name', 'tester']

      //Generate

      name LIKE '%tester%'

      値が配列の場合、次のように複数生成されますステートメントを作成し、AND を使用して接続します。例:
      ['like', 'name', ['test', 'sample']]

      //

      name LIKE '%test を生成% ' AND name LIKE '%sample%'

      注: このメソッドは列を参照し、配列内の値もエンコードします。 場合によっては、% を自分で処理する必要がある場合があります。その場合は、3 番目のパラメータを使用できます:
      ['like', 'name', '%tester', false]

      //

      name LIKE '%tester'

      または like:
    • like に似ています、2 番目のパラメーターが配列の場合、 または を使用して複数の like ステートメントを接続するだけです。
    • は好きではありません:
    • 好き に似ています。
    • が似ていない:
    • または似ている に似ています。
関連ラベル:
ソース:php.cn
前の記事:PHP - オブジェクト指向 次の記事:PHP ソフトウェア エンジニアの技術的成長計画
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
最新の問題
関連トピック
詳細>
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート