Recherche de chaînes préfixées dans la banque de données Google App Engine
L'interrogation de la banque de données Google App Engine pour récupérer des entités basées sur un préfixe peut être réalisée via un combinaison de filtres d'inégalité.
Pour rechercher toutes les entités dont la propriété "Nom" commence par une chaîne spécifique, utilisez une requête GQL comme suit :
SELECT * FROM Places WHERE Name > 'prefix' AND Name < 'prefix' + '\xFF'
Alternativement, en code Go, la requête peut être exprimée comme :
q := datastore.NewQuery("Places").Filter("Name >", "prefix").Filter("Name <", "prefix" + "\xFF")
Cette approche garantit que la requête récupère uniquement les entités dont les noms sont supérieurs (ou égaux) au préfixe spécifié et inférieurs à la chaîne lexicographique suivante dans la séquence. Par exemple, pour le préfixe « li », il correspondra aux noms comme « liam », « lisotto » et « lizst », mais exclura les noms comme « abc », « ljoi » ou « qwerty ».
Notez que la requête est sensible à la casse, ce qui signifie que "List" et "li" sont considérés comme des valeurs distinctes dans l'ordre lexicographique.
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!