/ / obtenir un bit par index à partir du champ de bits, mysql - mysql, bit, champs de bits

obtenir un bit par index à partir du champ de bits, mysql

Est-il possible d'obtenir un bit (ou bool) d'un champ de bits dans mysql?

La seule solution que j’ai proposée consiste à utiliser les éléments suivants: Je veux la valeur de bit à la position trois.

SELECT bit_count(bin(column) & b"100") AS bitValue FROM table;

Le résultat de cette requête est un un ou unzéro. Mais ça n'a pas l'air si gentil. Existe-t-il un meilleur moyen d’obtenir la valeur du bit à une position spécifique dans un champ de bits? La lecture des valeurs de bits se ferait lourdement sur mon application Web. Pensez-vous que la façon d'obtenir la valeur que j'ai utilisée ci-dessus poserait un problème pour la performance? Je veux dire avec un bit_count et un BIN () et "et" opérateur ..

Je cherche quelque chose comme:

SELECT column(3) FROM table;

Merci d'avoir lu!

Mattias

Réponses:

2 pour la réponse № 1

Si vous vous inquiétez des performances en lecture et de laLe bit qui vous intéresse est corrigé, essayez d’extraire le bit et de l’insérer dans une colonne booléenne. Si le bit que vous essayez d'extraire est dynamique, je pense que vos solutions sont optimales.