sql >> Databasteknik >  >> RDS >> Oracle

BITAND() Funktion i Oracle

I Oracle, BITAND() funktion returnerar bitvis AND av dess två argument.

Syntax

Syntaxen ser ut så här:

BITAND(expr1, expr2)

Där expr1 och expr2 är av typen NUMBER .

Argumenten måste ligga i intervallet -(2) .. ((2)-1). Om ett argument ligger utanför detta intervall är resultatet odefinierat.

Dessutom, om något av argumenten är NULL , resultatet är NULL .

Exempel

Här är ett exempel:

SELECT BITAND(6, 3)
FROM DUAL;

Resultat:

   BITAND(6,3) 
______________ 
             2

Icke-numeriska argument

Så här händer när vi tillhandahåller ett icke-numeriskt argument som inte kan konverteras till en numerisk datatyp:

SELECT BITAND('six', 3)
FROM DUAL;

Resultat:

Error starting at line : 1 in command -
SELECT BITAND('six',3)
FROM DUAL
Error report -
ORA-01722: invalid number

Nullvärden

Om något av argumenten är null , resultatet är null :

SET NULL 'null';

SELECT 
    BITAND(null, 3),
    BITAND(6, null)
FROM DUAL;

Resultat:

   BITAND(NULL,3)    BITAND(6,NULL) 
_________________ _________________ 
             null              null 

Som standard returnerar SQLcl och SQL*Plus ett tomt utrymme när null uppstår som ett resultat av en SQL SELECT påstående.

Du kan dock använda SET NULL för att ange en annan sträng som ska returneras. Här specificerade jag att strängen null bör returneras.

Inkorrekt antal argument

Anropar BITAND() utan att skicka några argument returnerar ett fel:

SELECT BITAND()
FROM DUAL;

Resultat:

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:

Och att skicka fel antal argument resulterar i ett fel:

SELECT BITAND(1, 2, 3)
FROM DUAL;

Resultat:

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:

  1. FROM_TZ() Funktion i Oracle

  2. Vad betyder en tidsstämpel i T-Sql i C#?

  3. Laravel Eloquent välj alla rader med max create_at

  4. Använd MySQL relationsdatabaser på Debian 6 (Squeeze)