MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

INTERVAL()関数の最初の引数がNULLの場合、MySQLは何を返しますか?


MySQLは、INTERVAL()関数の最初の引数がNULLの場合、出力として-1を返します。次の例はそれを示します-

mysql> Select INTERVAL(NULL,20,32,38,40,50,55);
+--------------------------------------+
| INTERVAL(NULL,20,32,38,40,50,55)     |
+--------------------------------------+
| -1                                   |
+--------------------------------------+
1 row in set (0.00 sec)
最初の引数とともに他の引数のいずれかがNULLであっても、-1を返します。

mysql> Select INTERVAL(NULL,20,32,NULL,40,50,NULL);
+--------------------------------------+
| INTERVAL(NULL,20,32,NULL,40,50,NULL) |
+--------------------------------------+
| -1                                   |
+--------------------------------------+
1 row in set (0.00 sec)

最初の引数がNULLでなく、他の引数のいずれか1つ以上がNULLの場合、より大きな数値のインデックス値が返されます(存在する場合)。

mysql> Select INTERVAL(50,20,NULL,55,40,50,NULL);
+------------------------------------+
| INTERVAL(50,20,NULL,55,40,50,NULL) |
+------------------------------------+
| 2                                  |
+------------------------------------+
1 row in set (0.00 sec)

  1. ビットの値が1で、最初の文字列がNULLの場合、MySQL MAKE_SET()関数は何を返しますか?

    MySQL MAKE_SET()関数は、ビットの値が1で、最初の文字列がNULLの場合、何も返しません。次の例では、この概念を示します- 例 mysql> Select MAKE_SET(1, NULL,'A','B'); +---------------------------+ | MAKE_SET(1, NULL,'A','B') | +---------------------------+ |                  

  2. MySQLの演算子<=>とは何ですか?

    MySQLでの演算子の使用法は次のとおりです。 ケース1 この演算子は=演算子に似ています。つまり、値が等しい場合、結果はtrue(1)になり、それ以外の場合はfalse(0)になります。 最初のケースでは、=演算子と演算子の両方が同じように機能します。 ケース2 値をNULLと比較する場合は常に、演算子は値0を返し、NULL NULLと比較する場合は、1を返します。 =演算子の場合、これは発生しません。値をNULLと比較するときは常に、NULLを返します。 NULLとNULLを比較すると、NULLのみが返されます。 上記の両方の場合の例を次に示します。クエリは次のとおりです-