Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A következőkre vonatkozik:SQL Server
Azure SQL Database
Felügyelt Azure SQL-példány
Azure Synapse Analytics
Elemzési platformrendszer (PDW)
SQL Analytics-végpont a Microsoft Fabricben
Raktár a Microsoft Fabricben
SQL-adatbázis a Microsoft Fabricben
Egy négy karakterből álló (SOUNDEX) kódot ad vissza két sztring hasonlóságának kiértékeléséhez.
Transact-SQL szintaxis konvenciói
Szintaxis
SOUNDEX ( character_expression )
Érvek
character_expression
Karakteradatok alfanumerikus kifejezése. character_expression lehet állandó, változó vagy oszlop.
Visszatérési típusok
varchar
Megjegyzések
SOUNDEX egy alfanumerikus sztringet négy karakterből álló kódmá alakít át, amely a sztring angol nyelvű beszéde alapján hangzik el. A kód első karaktere a nagybetűssé konvertált character_expressionelső karaktere. A kód második-negyedik karaktere olyan szám, amely a kifejezésben szereplő betűket jelöli. A A, E, I, O, U, H, Wés Y betűk figyelmen kívül lesznek hagyva, kivéve, ha a sztring első betűje. Ha egy négykarakteres kód létrehozásához szükséges, a végén nullák lesznek hozzáadva. További információ a SOUNDEX kódról: The Soundex Indexing System.
SOUNDEX különböző sztringek kódjai összehasonlíthatók annak megtekintéséhez, hogy a sztringek milyen hasonlóak a kimondott szöveghez. A DIFFERENCE() függvény két sztringen hajt végre SOUNDEX, és egy egész számot ad vissza, amely jelzi, hogy a SOUNDEX kódok mennyire hasonlítanak ezekhez a sztringekhez.
SOUNDEX a rendezés érzékeny. A sztringfüggvények beágyazhatók.
SOUNDEX kompatibilitás
Az SQL Server korábbi verzióiban a SOUNDEX függvény a SOUNDEX szabályok egy részét alkalmazta. A 110-es vagy újabb adatbázis-kompatibilitási szinten az SQL Server a szabályok teljesebb készletét alkalmazza.
A 110-es vagy újabb kompatibilitási szintre való frissítés után előfordulhat, hogy újra kell építenie a CHECK függvényt használó indexeket, halomokat vagy SOUNDEX korlátozásokat.
A
SOUNDEXdefiniált, megőrzött számított oszlopot tartalmazó halom nem kérdezhető le, amíg a halom újra nem jön létre az alábbi utasítás futtatásával:ALTER TABLE <table> REBUILD;CHECKSOUNDEXdefiniált korlátozások a frissítéskor le lesznek tiltva. A kényszer engedélyezéséhez futtassa a következő utasítást:ALTER TABLE <table> WITH CHECK CHECK CONSTRAINT ALL;A
SOUNDEXdefiniált, megőrzött számított oszlopot tartalmazó indexek (beleértve az indexelt nézeteket is) csak az alábbi utasítás futtatásával kérdezhetők le:ALTER INDEX ALL ON <object> REBUILD;
Példák
Egy. A SOUNDEX használata
Az alábbi példa a SOUNDEX függvényt és a kapcsolódó DIFFERENCE függvényt mutatja be. Az első példában a standard SOUNDEX értékek lesznek visszaadva az összes mássalhangzó esetében. A SOUNDEX és SmithSmythe visszaadása ugyanazt a SOUNDEX eredményt adja vissza, mivel az összes magánhangzó, a ybetű, a dupla betű és a hbetű nem szerepel benne.
SELECT SOUNDEX('Smith'),
SOUNDEX('Smythe');
Itt van az eredményhalmaz. Érvényes Latin1_General rendezéshez.
S530 S530
B. A KÜLÖNBSÉG használata
A DIFFERENCE függvény a SOUNDEX mintaeredmények különbségét hasonlítja össze. Az alábbi példa két sztringet mutat be, amelyek csak magánhangzókban különböznek. A visszaadott különbség 4, a lehető legkisebb különbség.
SELECT DIFFERENCE('Smithers', 'Smythers');
GO
Itt van az eredményhalmaz. Érvényes Latin1_General rendezéshez.
4
Az alábbi példában a sztringek mássalhangzókban különböznek; ezért a visszaadott különbség 2, annál nagyobb a különbség.
SELECT DIFFERENCE('Anothers', 'Brothers');
GO
Itt van az eredményhalmaz. Érvényes Latin1_General rendezéshez.
2