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: