sql >> Database >  >> RDS >> Oracle

BITAND() Functie in Oracle

In Oracle is de BITAND() functie retourneert een bitsgewijze AND van zijn twee argumenten.

Syntaxis

De syntaxis gaat als volgt:

BITAND(expr1, expr2)

Waar expr1 en expr2 zijn van het type NUMBER .

De argumenten moeten in het bereik -(2) .. ((2)-1) liggen. Als een argument buiten dit bereik valt, is het resultaat niet gedefinieerd.

Als een van beide argumenten NULL is, , het resultaat is NULL .

Voorbeeld

Hier is een voorbeeld:

SELECT BITAND(6, 3)
FROM DUAL;

Resultaat:

   BITAND(6,3) 
______________ 
             2

Niet-numerieke argumenten

Dit is wat er gebeurt als we een niet-numeriek argument opgeven dat niet kan worden geconverteerd naar een numeriek gegevenstype:

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

Resultaat:

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

Null-waarden

Als een van de argumenten null . is , het resultaat is null :

SET NULL 'null';

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

Resultaat:

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

Standaard retourneren SQLcl en SQL*Plus een spatie wanneer null treedt op als resultaat van een SQL SELECT uitspraak.

U kunt echter SET NULL . gebruiken om een ​​andere tekenreeks op te geven die moet worden geretourneerd. Hier heb ik gespecificeerd dat de string null moet worden geretourneerd.

Onjuist aantal argumenten

BITAND() . aanroepen zonder het doorgeven van argumenten geeft een fout:

SELECT BITAND()
FROM DUAL;

Resultaat:

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:

En het doorgeven van het verkeerde aantal argumenten resulteert in een fout:

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

Resultaat:

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. Berekening van de gemiddelde voorraadkosten in SQL

  2. Hoe MySQL op Debian 8 te installeren

  3. Toegang tot het SQL Server-exemplaar herstellen zonder opnieuw op te starten

  4. Maak een draaiweergave in SQL vanuit een SQL-tabel