sql >> Database teknologi >  >> RDS >> Oracle

BIN_TO_NUM() Funktion i Oracle

I Oracle Database er BIT_TO_NUM() funktion konverterer en bitvektor til dets tilsvarende tal.

Syntaks

Syntaksen ser sådan ud:

BIN_TO_NUM(expr [, expr ]... )

Hvor hver expr repræsenterer en bit i bitvektoren.

Argumentet/-erne kan være enhver numerisk datatype eller enhver ikke-numerisk datatype, der implicit kan konverteres til NUMBER . Hvert udtryk skal evalueres til 0 eller 1 .

Eksempel

Her er et eksempel:

SELECT BIN_TO_NUM(1)
FROM DUAL;

Resultat:

1

I dette tilfælde repræsenterer den binære værdi 1 tallet 1.

Her er endnu en:

SELECT BIN_TO_NUM(1, 0)
FROM DUAL;

Resultat:

2

Lad os nu lave et meget større antal:

SELECT BIN_TO_NUM(1, 0, 1, 1, 1, 0)
FROM DUAL;

Resultat:

46

Ugyldige argumenter

Ringer til BIN_TO_NUM() med argumenter, der ikke løses til et NUMBER resultere i en fejl:

SELECT BIN_TO_NUM('Cat')
FROM DUAL;

Resultat:

ORA-01722: invalid number

Nul-værdier

Hvis et argument er null , opstår der en "ulovlig argument"-fejl:

SELECT BIN_TO_NUM(null)
FROM DUAL;

Resultat:

ORA-01760: illegal argument for function

Ingen argumenter?

Ringer til BIN_TO_NUM() uden argumenter returnerer 0 (nul):

SELECT BIN_TO_NUM()
FROM DUAL;

Resultat:

0

  1. Hvordan kan jeg opdatere et felt af min spinner med brugerinput i EditText

  2. Opret forbindelse til mysql i en docker-container fra værten

  3. Indstilling af netværkstimeout for JDBC-forbindelse

  4. Kan jeg løse dette med ren mysql? (sammenføjning på '' adskilte værdier i en kolonne)