sql >> Databasteknik >  >> RDS >> Mysql

MySQL bitvisa operationer, blomfilter

Skapa en tabell med int kolumn (använd denna länk för att välja rätt int-storlek). Lagra inte siffror som en sekvens av 0 och 1.

För din data kommer det att se ut så här:

number

154
53
148
38
59
106

och du måste hitta alla poster som matchar 24.

Sedan kan du köra en fråga som

SELECT * FROM test WHERE number & 24 = 24

Om du vill undvika konvertering till 10 basnummer i din applikation kan du lämna över den till mysql:

INSERT INTO test SET number = b'00110101';

och sök så här

SELECT bin(number) FROM test WHERE number & b'00011000' = b'00011000'


  1. postgresql databasägare kan inte komma åt databasen - Inga relationer hittades.

  2. En resa genom GIMR

  3. json-kolumn kontra flera kolumner

  4. mysql-fel:Tabell mysql.innodb_table_stats hittades inte