2011-09-03 14 views
6
SELECT SOUNDEX ('Smith'), SOUNDEX ('Smythe'); 
----- ----- 
S530 S530 

(1 row(s) affected) 

Aquí, el valor devuelto por la función SOUNDEX() es "S530".Función SQL-soundex

¿Podría decirme cómo se procesa la expresión de entrada en la función SOUNDEX(). En este ejemplo, el primer carácter es "S" porque es el primer carácter en la expresión de entrada, pero ¿cómo se calculan los tres dígitos restantes?

Respuesta

9

Eche un vistazo a esta article

La primera letra del código corresponde a la primera letra del nombre . El resto del código se compone de tres dígitos derivados de las sílabas de la palabra de acuerdo con el siguiente código:

  • 1 = B, F, P, V
  • 2 = C, G, J, K , Q, S, X, Z
  • 3 = D T
  • 4 = L
  • 5 = M, N
  • 6 = R

Las letras dobles con el mismo código de Soundex, A, E, I, O, U, H, W, Y, y algunos prefijos Se prescinde ...

Así que para Smith y Smythe El código se creado así:

S S -> S 
m m -> 5 
i y -> 0 
t t -> 3 
h h -> 0 
    e -> - 
+0

Muchas gracias .. El artículo fue realmente muy agradable .. –