Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Fonction BIT_OR
La fonction BIT_OR exécute des opérations OR bit par bit sur toutes les valeurs d’une seule colonne ou expression d’entiers. Ces fonctions regroupent chaque bit de chaque valeur binaire correspondant à chaque valeur de nombre entier de l’expression.
Par exemple, supposons que votre table contient quatre valeurs de nombre entier dans une colonne : 3, 7, 10 et 22. Ces nombres entiers sont représentés sous la forme binaire suivante.
Entier | Valeur binaire |
---|---|
3 | 11 |
7 | 111 |
10 | 1010 |
22 | 10110 |
Si vous appliquez la fonction BIT_OR au même ensemble de valeurs entières, l’opération recherche toutes les valeurs contenant 1
à chaque position. Dans ce cas, il existe une valeur de 1
aux cinq dernières positions d’au moins une des valeurs, ce qui donne entraîne un résultat binaire de 00011111
. Par conséquent, la fonction renvoie 31
(ou 16 + 8 + 4 + 2 + 1
).
Syntaxe
BIT_OR ( [DISTINCT | ALL] expression )
Arguments
- expression
-
Colonne cible ou expression sur laquelle la fonction opère. Cette expression doit avoir un INT ou un type de INT8 données. INT2 La fonction renvoie un INT ou un type de INT8 données équivalent. INT2
- DISTINCT | ALL
-
Avec l’argument DISTINCT, la fonction supprime toutes les valeurs en double de l’expression spécifiée avant de calculer le résultat. Avec l’argument ALL, la fonction conserve toutes les valeurs en double. La valeur par défaut est ALL. Pour plus d'informations, consultez Prise en charge de la fonction DISTINCT pour les agrégations bit par bit.
exemple
La requête suivante applique la fonction BIT_AND à la colonne LIKES dans une table appelée USERLIKES et regroupe les résultats en fonction de la colonne CITY.
select city, bit_or(likes) from userlikes group by city order by city; city | bit_or --------------+-------- Los Angeles | 127 Sacramento | 255 San Francisco | 255 San Jose | 255 Santa Barbara | 255 (5 rows)
Pour quatre des villes répertoriées, tous les types d’événements sont appréciés par au moins un utilisateur (255=11111111
). Pour Los Angeles, tous les types d’événements, sauf le sport sont appréciés par au moins un utilisateur (127=01111111
).