Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunlar için geçerlidir:SQL Server
Azure SQL Veritabanı
Azure SQL Yönetilen Örneği
Azure Synapse Analytics
Analiz Platformu Sistemi (PDW)
Microsoft Fabric'teki SQL analiz uç noktası
Microsoft Fabric'teki ambar
Microsoft Fabric'teki SQL veritabanı
İki dizenin benzerliğini değerlendirmek için dört karakterli (SOUNDEX) bir kod döndürür.
Transact-SQL söz dizimi kuralları
Sözdizimi
SOUNDEX ( character_expression )
Bağımsız değişken
character_expression
Karakter verilerinin alfasayısal ifadesi. character_expression sabit, değişken veya sütun olabilir.
Dönüş türleri
varchar
Açıklamalar
SOUNDEX, alfasayısal dizeyi, İngilizce konuşulan dizenin nasıl göründüğüne bağlı olarak dört karakterli bir koda dönüştürür. Kodun ilk karakteri, büyük harfe dönüştürülen character_expressionilk karakteridir. Kodun ikinci ile dördüncü karakterleri, ifadedeki harfleri temsil eden sayılardır. , A, E, I, O, U, Hve WYharfler, dizenin ilk harfi olmadığı sürece yoksayılır. Dört karakterli bir kod oluşturmak için gerekirse sonuna sıfırlar eklenir.
SOUNDEX kodu hakkında daha fazla bilgi için bkz. Soundex Dizin Oluşturma Sistemi.
Farklı dizelerdeki SOUNDEX kodları, konuşulan dizelerin ne kadar benzer olduğunu görmek için karşılaştırılabilir.
DIFFERENCE() işlevi iki dizede bir SOUNDEX gerçekleştirir ve bu dizeler için SOUNDEX kodlarının ne kadar benzer olduğunu gösteren bir tamsayı döndürür.
SOUNDEX harmanlama duyarlıdır. Dize işlevleri iç içe yerleştirilmiş olabilir.
SOUNDEX uyumluluğu
SQL Server'ın önceki sürümlerinde, SOUNDEX işlevi SOUNDEX kurallarının bir alt kümesini uyguladı. Veritabanı uyumluluk düzeyi 110 veya üzeri altında, SQL Server kuralların daha eksiksiz bir kümesini uygular.
Uyumluluk düzeyi 110 veya üzerine yükselttikten sonra, CHECK işlevini kullanan dizinleri, yığınları veya SOUNDEX kısıtlamaları yeniden oluşturmanız gerekebilir.
SOUNDEXile tanımlanan kalıcı bir hesaplanan sütun içeren yığın, aşağıdaki deyim çalıştırılarak yığın yeniden oluşturulana kadar sorgulanamaz:ALTER TABLE <table> REBUILD;CHECKile tanımlananSOUNDEXkısıtlamaları yükseltmeden sonra devre dışı bırakılır. Kısıtlamayı etkinleştirmek için aşağıdaki deyimi çalıştırın:ALTER TABLE <table> WITH CHECK CHECK CONSTRAINT ALL;SOUNDEXile tanımlanan kalıcı bir hesaplanan sütun içeren dizinler (dizinlenmiş görünümler dahil) aşağıdaki deyim çalıştırılarak dizin yeniden oluşturulana kadar sorgulanamaz:ALTER INDEX ALL ON <object> REBUILD;
Örnekler
A. SOUNDEX kullanma
Aşağıdaki örnekte SOUNDEX işlevi ve ilgili DIFFERENCE işlevi gösterilmektedir. İlk örnekte, standart SOUNDEX değerleri tüm consonants için döndürülür.
SOUNDEX ve Smith için Smythe döndürüldüğünde, tüm ünlüler, SOUNDEXharfi, çift harfler ve yharfi dahil edilmediğinden aynı h sonucu döndürür.
SELECT SOUNDEX('Smith'),
SOUNDEX('Smythe');
Sonuç kümesi aşağıdadır.
Latin1_General harmanlama için geçerlidir.
S530 S530
B. FARK kullan
DIFFERENCE işlevi, SOUNDEX desen sonuçlarının farkını karşılaştırır. Aşağıdaki örnekte yalnızca sesli harflerden farklı olan iki dize gösterilmektedir. Döndürülen fark 4, mümkün olan en düşük farktır.
SELECT DIFFERENCE('Smithers', 'Smythers');
GO
Sonuç kümesi aşağıdadır.
Latin1_General harmanlama için geçerlidir.
4
Aşağıdaki örnekte, dizeler consonants bakımından farklılık gösterir; bu nedenle, döndürülen fark 2, daha büyük farktır.
SELECT DIFFERENCE('Anothers', 'Brothers');
GO
Sonuç kümesi aşağıdadır.
Latin1_General harmanlama için geçerlidir.
2