Mysql
 sql >> Base de données >  >> RDS >> Mysql

Trouver des modèles de nombres similaires dans le tableau

convertissez vos séquences de nombres en masques de bits et utilisez BIT_COUNT (colonne ^ recherche) en tant que fonction de similarité, allant de 0 (=correspondance à 100 %, les chaînes sont égales) à [longueur en bits] (=0 %, les chaînes sont complètement différentes). Pour convertir cette fonction de similarité en pourcentage, utilisez

100 * (bit_length - similarity) / bit_length

Par exemple, "1-1-2-2-1" devient "00110" (en supposant que vous n'avez que deux états), 2-1-1-2-1 est "10010", bit_count(00110 ^ 10010) =2, bit-length =5, et 100 * (5 - 2) / 5 =60%.