Función SOUNDSLIKE( )
Devuelve un valor lógico que indica si una cadena coincide fonéticamente con una cadena de comparación.
Sintaxis
SOUNDSLIKE(nombre; suena_como_nombre)
Parámetros
Nombre | Tipo | Descripción |
---|---|---|
nombre | carácter | La primera cadena de la comparación. |
suena_como_nombre | carácter | La segunda cadena de la comparación. |
Salida
Lógico. Devuelve T (verdadero) si los valores que se están comparando coinciden fonéticamente y F (falso) en caso contrario.
Ejemplos
Ejemplos básicos
Devuelve T, porque tanto “Fairdale” como “Faredale” tienen un código soundex de F634:
SOUNDSLIKE("Fairdale";"Faredale")
Devuelve F, porque "Jonson" tiene un código soundex de J525 y "Jonston" tiene un código soundex de J523:
SOUNDSLIKE("Jonson";"Jonston")
Devuelve un valor lógico (T o F) que indica si el código soundex para cada valor del campo Apellido coincide con el código soundex para la cadena "Smith":
SOUNDSLIKE(Apellido; Smith")
Ejemplos avanzados
Aislar valores que suenan como "Smith"
Cree un filtro que aísle todos los valores del campo Apellido que suenan como "Smith":
SET FILTER TO SOUNDSLIKE(Apellido;"Smith")
Observaciones
Cuándo usar SOUNDSLIKE( )
Utilice la función SOUNDSLIKE( ) para buscar valores que suenen de manera similar. La similitud fonética es una manera de localizar posibles valores duplicados, u ortografía incoherente en los datos que se introducen de forma manual.
Cómo funciona
SOUNDSLIKE( ) convierte las cadenas de comparación en códigos Soundex de cuatro caracteres estadounidenses, a partir de la primera letra y las tres primeras consonantes después de la primera letra, en cada cadena.
A continuación, la función compara el código de cada cadena y devuelve un valor lógico que indica si coinciden.
Si desea obtener más información acerca de los códigos soundex, consulte Función SOUNDEX( ).
Coincidir mayúsc.-minúsc.
Esta función no distingue entre mayúsculas y minúsculas; por lo tanto "SMITH" es equivalente a "smith".
Limitaciones del proceso soundex
Tanto la función SOUNDSLIKE( ) como la función SOUNDEX( ) tienen ciertas limitaciones:
- El algoritmo soundex está diseñado para trabajar con las palabras pronunciadas en inglés y tiene diferentes grados de efectividad cuando se usa con otros idiomas.
- Aunque el proceso soundex realiza una coincidencia fonética, todas las palabras coincidentes deben comenzar con la misma letra, lo que significa que algunas palabras que suenan igual no se dan por coincidentes.
Por ejemplo, una palabra que comienza con una "F" y una palabra que comienza con "Ph" podrían sonar igual, pero nunca se darán por coincidentes.
Funciones relacionadas
- SOUNDEX( ) proporciona un método alternativo para comparar cadenas fonéticamente.
- ISFUZZYDUP( ) y LEVDIST comparan cadenas según la comparación ortográfica (escritura) en lugar de hacerlo por una comparación fonética (sonido).
- DICECOEFFICIENT( ) le quita el énfasis o ignora completamente la posición relativa de los caracteres o de los bloques de caracteres al comparar cadenas.