Maison > Article > base de données > Comment puis-je optimiser le stockage des UUID dans MySQL et améliorer les performances des requêtes ?
Optimisation du stockage des UUID dans MySQL : conversion en nombre
Bien que les UUID offrent un caractère unique, leur stockage sous forme de chaînes dans MySQL peut nuire aux performances. Pour améliorer l'efficacité de la récupération des données, il est conseillé de stocker les UUID sous forme de nombres.
Processus de conversion
Insérer à l'aide d'UNHEX() :
Insérez l'UUID dans le champ BINARY en utilisant la fonction UNHEX(), par exemple :
INSERT INTO Table (FieldBin) VALUES (UNHEX("110E8400E29B11D4A716446655440000"))
Requête à l'aide de HEX() :
Pour récupérer l'UUID, utilisez la fonction HEX() , par exemple :
SELECT HEX(FieldBin) AS FieldBin FROM Table
Exemple
require 'mysql2' client = Mysql2::Client.new( host: 'localhost', username: 'root', password: 'password', database: 'test_database' ) uuid_binary = client.query( 'SELECT HEX(FieldBin) AS FieldBin FROM test_table' ).first['FieldBin'] uuid = uuid_binary.insert(9, '-').insert(14, '-').insert(19, '-').insert(24, '-') puts uuid
En stockant les UUID sous forme de nombres, vous pouvez optimiser la récupération de données dans MySQL, améliorant ainsi considérablement les performances des requêtes.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!