Le type de résultat est un entier avec des bits égaux aux bits maximum de ses arguments. Si au moins l'un des arguments est signé, le résultat est un signé nombre. Si un argument est un nombre à virgule flottante, Il est converti en Int64.
Prend tout entier et le convertit en [forme binaire](https://en.wikipedia.org/wiki/Binary_number) renvoie la valeur d'un bit à la position spécifiée. Le compte à rebours commence à partir de 0 de la droite vers la gauche.
Renvoie une valeur de bit à la position spécifiée.
Type: `UInt8`.
**Exemple**
Par exemple, le nombre 43 dans le système numérique de base-2 (binaire) est 101011.
Requête:
``` sql
SELECT bitTest(43, 1)
```
Résultat:
``` text
┌─bitTest(43, 1)─┐
│ 1 │
└────────────────┘
```
Un autre exemple:
Requête:
``` sql
SELECT bitTest(43, 2)
```
Résultat:
``` text
┌─bitTest(43, 2)─┐
│ 0 │
└────────────────┘
```
## bitTestAll {#bittestall}
Renvoie le résultat de [logique de conjonction](https://en.wikipedia.org/wiki/Logical_conjunction) (Et opérateur) de tous les bits à des positions données. Le compte à rebours commence à partir de 0 de la droite vers la gauche.
-`index1`, `index2`, `index3`, `index4`– positions of bit. For example, for set of positions (`index1`, `index2`, `index3`, `index4`) est vrai si et seulement si toutes ses positions sont remplies (`index1` ⋀ `index2`, ⋀ `index3` ⋀ `index4`).
**Valeurs renvoyées**
Retourne le résultat de la conjonction logique.
Type: `UInt8`.
**Exemple**
Par exemple, le nombre 43 dans le système numérique de base-2 (binaire) est 101011.
Requête:
``` sql
SELECT bitTestAll(43, 0, 1, 3, 5)
```
Résultat:
``` text
┌─bitTestAll(43, 0, 1, 3, 5)─┐
│ 1 │
└────────────────────────────┘
```
Un autre exemple:
Requête:
``` sql
SELECT bitTestAll(43, 0, 1, 3, 5, 2)
```
Résultat:
``` text
┌─bitTestAll(43, 0, 1, 3, 5, 2)─┐
│ 0 │
└───────────────────────────────┘
```
## bitTestAny {#bittestany}
Renvoie le résultat de [disjonction logique](https://en.wikipedia.org/wiki/Logical_disjunction) (Ou opérateur) de tous les bits à des positions données. Le compte à rebours commence à partir de 0 de la droite vers la gauche.
-`x` — [Entier](../../sql-reference/data-types/int-uint.md) ou [virgule flottante](../../sql-reference/data-types/float.md) nombre. La fonction utilise la représentation de la valeur en mémoire. Il permet de financer les nombres à virgule flottante.
La fonction ne convertit pas la valeur d'entrée en un type plus grand ([l'extension du signe](https://en.wikipedia.org/wiki/Sign_extension)). Ainsi, par exemple, `bitCount(toUInt8(-1)) = 8`.