0
votes

Quelle est la meilleure façon de comparer un champ de nom avec une valeur de chaîne?

J'ai une requête qui compare une valeur de chaîne contre un champ de nom dans ma base de données. La structure du champ Nom dans la base de données n'est pas cohérente, il pourrait s'agir de ces éléments suivants: xxx

ma valeur de chaîne peut être dans n'importe quelle structure, mais il s'agit actuellement de: xxx

requête: xxx

ceci ne renvoie pas toujours les enregistrements. Quelle est la requête la plus fiable pour faire une comparaison dans n'importe quelle structure?


1 commentaires

Full_Name dans ('John Doe', 'Doe John', 'Doe, John')


5 Réponses :


-1
votes

Utiliser où nom in ('doe%', 'john%')

ou

Utiliser comme avec ou clause comme

Utiliser où nom comme "DOE%" ou "Jean%"

Notez que vous avez obtenu le O / P aussi rare par votre requête car il ne suffit que la dernière ligne qui rencontre une structure entière dans votre clause similaire avec ,% qui ne signifie pas fonctionner pour 2 mots séparés


0 commentaires

2
votes

option 1 forte> - comme commenté par Melpomene : le dans code > condition xxx pré>

Si vous savez à l'avance toutes les variations possibles du nom complet, c'est l'approche la plus efficace. Avec un index sur la colonne FULL_NAME CODE>, qui devrait être très rapide. P>

OPTION 2 STROND>: Assurez-vous que les deux prénoms et nom font partie de la chaîne: P>

full_name LIKE '%John%' AND full_name LIKE '%Doe%'


0 commentaires

0
votes

Ceci: xxx

transformera pleinement_name à:

'John, DOE' ou '' '' / code> Même si cela ne contient pas , . Ceux-ci: xxx

extrait ce qui reste et droit de , dans la valeur de votre chaîne de modèle. Donc, vous pouvez faire ceci: xxx


0 commentaires

0
votes

Vous pouvez diviser cela en noms, puis comparer à l'aide de comme . Par exemple: xxx

le bool_and () nécessite que toutes les composantes correspondent à la correspondance.

Cela dit, vous devez corriger le modèle de données, de sorte que vous stockez les prénoms et les noms de famille dans différentes colonnes.


0 commentaires

0
votes

Vous pouvez également essayer avec ce xxx


0 commentaires