Mysql Bitweise Operationen und filter

Ich versuche zu implementieren bitweise filter mit MYSQL (mit udf-wenn nötig)

Der filter ist so etwas wie ein UND aber ich wollen, verwenden Sie die Maske zum erstellen einer neuen bit-string...
Lassen Sie mich erklären Sie mit einem Beispiel :

Angenommen ich habe eine Tabelle mit blob-Speicherung von 8-bit-streams:

  • data1: 10110110
  • data2: 01100010
  • data3: 00010011

Dann habe ich eine Maske anwenden, um die bits von Daten, wenn die Maske Wert ist 1

  • MASKE: 00101011

Und so erhalten Sie die folgenden erwarteten Ergebnisse:

  • data1: 1010
  • data2: 1010
  • data3: 0011

Gibt es eine Möglichkeit zur Optimierung der Filterung, ohne Schleifen über jedes bit der "Maske" zu erhalten, wird der entsprechende Wert in "data" Zeile...

KLÄRUNG

Habe ich nur 8 bits für die post, aber es ist mehr wie 256 bytes

Joe : um Zu klären, exemple, die Maske 00101011 wird interpretiert als : Holen Sie sich die bit-Wert aus Datenfeld an position 3,5,7,8, wenn Sie Lesen, die Maske von Links nach rechts aufgezählt von bit 1 bis bit 8... Hoffe, diese Klarstellung ist "klar"...

  • Ich bin nicht zu sehen, wie die Maske und die Zeilen sollen zurückkehren, die Daten
  • Meiner Meinung nach ist es wirklich schwierig, dies umzusetzen, ohne eine Schleife.
InformationsquelleAutor Hubert | 2011-10-03
Schreibe einen Kommentar