SOUNDEX

Stai visualizzando una vecchia versione di questo article. Visualizza la versione più recente.

Sintassi

SOUNDEX(str)

Spiegazione

Restituisce una stringa soundex calcolata a partire da str. Due stringhe che, pronunciate, suonano quasi allo stesso modo, producono identiche stringhe soundex. Una tipica stringa soundex è di quattro caratteri, ma la funzione SOUNDEX() restituisce una stringa di lunghezza arbitraria. E' possibile utilizzare SUBSTRING() sul risultato per ottenere una stringa soundex standard. Tutti i caratteri non alfabetici in str vengono ignorati. Tutti i caratteri alfabetici internazionali fuori dall'intervallo A-Z vengono trattati come vocali.

Importante: Se si utilizza SOUNDEX(), si dovrebbero conoscere le seguenti limitazioni:

  • Questa funzione, per come è implementata al momento, funziona bene solo con stringhe in lingua inglese. Le stringhe in altre lingue potrebbero non produrre risultati affidabili.
  • Non si garantisce che la funzione restituisca risultati coerenti con le stringhe che utilizzano set di caratteri multi-byte, compreso utf-8.

Speriamo di rimuovere queste limitazioni in una versione futura. Si veda Bug#22638 (http://bugs.mysql.com/22638) per ulteriori informazioni.

Esempi

MariaDB [(none)]> SELECT SOUNDEX('Hello');
+------------------+
| SOUNDEX('Hello') |
+------------------+
| H400             |
+------------------+
MariaDB [(none)]> SELECT SOUNDEX('MariaDB');
+--------------------+
| SOUNDEX('MariaDB') |
+--------------------+
| M631               |
+--------------------+
MariaDB [(none)]> SELECT SOUNDEX('Knowledgebase');
+--------------------------+
| SOUNDEX('Knowledgebase') |
+--------------------------+
| K543212                  |
+--------------------------+
MariaDB [test]> SELECT givenname, surname FROM users WHERE SOUNDEX(givenname) = SOUNDEX("robert");
+-----------+---------+
| givenname | surname |
+-----------+---------+
| Roberto   | Castro  |
+-----------+---------+

See Also:

Commenti

Sto caricando i commenti......
Content reproduced on this site is the property of its respective owners, and this content is not reviewed in advance by MariaDB. The views, information and opinions expressed by this content do not necessarily represent those of MariaDB or any other party.