Mysql
 sql >> Database >  >> RDS >> Mysql

Operazioni MySQL bit a bit, filtro bloom

Crea una tabella con la colonna int (usa questo link per scegliere la giusta dimensione interna). Non memorizzare i numeri come una sequenza di 0 e 1.

Per i tuoi dati sarà simile a questo:

number

154
53
148
38
59
106

e devi trovare tutte le voci corrispondenti a 24.

Quindi puoi eseguire una query come

SELECT * FROM test WHERE number & 24 = 24

Se vuoi evitare la conversione in 10 numeri di base nella tua applicazione puoi consegnarla a mysql:

INSERT INTO test SET number = b'00110101';

e cerca in questo modo

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