onsdag 1 april 2009

DEVTIPS #10 T-SQL Soundex() Function

Soundex är ett fonetiskt mönstermatchingssystem.
T ex lagras namnet "Nielsen" med N425 här nedan följer en förklaring.

Första bokstaven lagras och dom följande 3 fonetiska ljuden blir sparade enligt följande regler:
1 - B, F, P, V
2 - C, G, J, K, Q, S, X, Z
3 - D, T
4 - L
5 - M, N
6 - R

A,E,I,O,U,H,W,Y kastas bort.

"Nielsen" lagras som N425:
1. N Lagras
2. i och e kastas bort.
3. l ljudet sparas som 4.
4. s lagras som 2.
5. e kastas bort.
6. n lagras som 5. 

Soundex lagrar "Nielsen", "Nelson" och "Neilson" med samma kod: N425

SQL Exempel:
   SELECT LastName, FirstName
  FROM Customer
  WHERE SOUNDEX('Nielsen') = SOUNDEX(LastName)

Resultat:
  LastName FirstName
  ----------------------------------
  Nielsen  John
  Nelson  Robert
  Neilson  Anna

Inga kommentarer: