1.1 条件関数一覧

if-elseSQL 言語には、Javaの演算子に似た関数のリストがありますswitch

このような関数は合計 4 つあります。

機能 説明
1 場合 アナログスイッチ
2 もしも() 三項演算子または if-else の類似物
3 IFNULL() if-else の類似物
4 NULLIF() if-else の類似物

SQL の最後の 3 つは関数として表現され、CASE本格的な演算子ですので、最後に分けて考えます。

1.2 IF()関数

SQL の関数は、IF()Java の三項演算子に似ています。SQL 言語では、3 つのパラメーターを受け取り、次のようになります。

IF (condition, true, false)

3 つの式を関数に渡す必要がありますIF

  • 真偽が試される条件。
  • 条件が true の場合に返される式。
  • 条件が false の場合に返される式。

どのように機能するかを理解しやすくするために、以下にいくつかの例を示します。

リクエスト 結果
1 SELECT IF( 1>2 , 2, 3) 3
2 SELECT IF( 1<2 , 'はい', 'いいえ') 'はい'
3 SELECT IF( STRCMP('テスト','テスト1' ), 'いいえ', 'はい') 'いいえ'

1.3 関数 IFNULL() および NULLIF()

この関数には 2 つの変更もありますIF()

最初の変更は関数ですIFNULL()。次の 2 つの値のみを取ります。

IFNULL (expression 1, expression 2)

Expression1が に等しくない場合NULL、関数はExpression1を返します。式 1 の場合IS NULL,、関数は式 2を返します。本質は、フィールドが に等しい場合にデフォルト値を置き換えることですNULL

関数の 2 番目の変更はIFfunction でNULLIF()、これも 2 つの値を取ります。

NULLIF (expression 1, expression 2)

それは逆の方向に動作します。

  • Expression1がExpression2と等しい場合、関数は戻りますNULL
  • 式が等しくない場合は、expression1が返されます。