Oracleでは、BITAND() 関数はビット単位のANDを返します その2つの議論の。
構文
構文は次のようになります:
BITAND(expr1, expr2)
expr1の場所 およびexpr2 タイプはNUMBER 。
引数は-(2)..((2)-1)の範囲内でなければなりません。引数がこの範囲外の場合、結果は未定義です。
また、いずれかの引数がNULLの場合 、結果はNULLです 。
例
次に例を示します:
SELECT BITAND(6, 3)
FROM DUAL; 結果:
BITAND(6,3)
______________
2 非数値引数
数値データ型に変換できない非数値引数を指定すると、次のようになります。
SELECT BITAND('six', 3)
FROM DUAL; 結果:
Error starting at line : 1 in command -
SELECT BITAND('six',3)
FROM DUAL
Error report -
ORA-01722: invalid number ヌル値
引数のいずれかがnullの場合 、結果はnullです :
SET NULL 'null';
SELECT
BITAND(null, 3),
BITAND(6, null)
FROM DUAL; 結果:
BITAND(NULL,3) BITAND(6,NULL)
_________________ _________________
null null
デフォルトでは、SQLclおよびSQL * Plusは、nullの場合は常に空白を返します。 SQL SELECTの結果として発生します 声明。
ただし、SET NULLは使用できます 返される別の文字列を指定します。ここでは、文字列nullを指定しました 返却する必要があります。
引数の数が正しくありません
BITAND()の呼び出し 引数を渡さないとエラーが返されます:
SELECT BITAND()
FROM DUAL; 結果:
Error starting at line : 1 in command - SELECT BITAND() FROM DUAL Error at Command Line : 1 Column : 8 Error report - SQL Error: ORA-00909: invalid number of arguments 00909. 00000 - "invalid number of arguments" *Cause: *Action:
また、間違った数の引数を渡すと、エラーが発生します:
SELECT BITAND(1, 2, 3)
FROM DUAL; 結果:
Error starting at line : 1 in command - SELECT BITAND(1, 2, 3) FROM DUAL Error at Command Line : 1 Column : 8 Error report - SQL Error: ORA-00909: invalid number of arguments 00909. 00000 - "invalid number of arguments" *Cause: *Action: