sql >> Database >  >> RDS >> Mysql

Hoe de SOUNDS LIKE-operator werkt in MySQL

In MySQL kunt u de SOUNDS LIKE . gebruiken operator om resultaten te retourneren die klinken als een bepaald woord.

Deze operator werkt het beste op strings in de Engelse taal (gebruik met andere talen kan onbetrouwbare resultaten opleveren).

Syntaxis

De syntaxis gaat als volgt:

expr1 SOUNDS LIKE expr2

Waar expr1 en expr2 zijn de invoerreeksen die worden vergeleken.

Deze operator is het equivalent van het volgende doen:

SOUNDEX(expr1) = SOUNDEX(expr2)

Voorbeeld 1 – Basisgebruik

Hier is een voorbeeld van het gebruik van deze operator in een SELECT verklaring:

SELECT 'Damn' SOUNDS LIKE 'Dam';

Resultaat:

+--------------------------+
| 'Damn' SOUNDS LIKE 'Dam' |
+--------------------------+
|                        1 |
+--------------------------+

In dit geval is de retourwaarde 1 wat betekent dat de twee ingangssnaren hetzelfde klinken.

Dit is wat er gebeurt als de invoerstrings niet hetzelfde klinken:

SELECT 'Damn' SOUNDS LIKE 'Cat';

Resultaat:

+--------------------------+
| 'Damn' SOUNDS LIKE 'Cat' |
+--------------------------+
|                        0 |
+--------------------------+

Voorbeeld 2 – Vergeleken met SOUNDEX()

Hier wordt het vergeleken met SOUNDEX() :

SELECT 
  'Damn' SOUNDS LIKE 'Dam' AS 'SOUNDS LIKE',
  SOUNDEX('Dam') = SOUNDEX('Damn') AS 'SOUNDEX()';

Resultaat:

+-------------+-----------+
| SOUNDS LIKE | SOUNDEX() |
+-------------+-----------+
|           1 |         1 |
+-------------+-----------+

Voorbeeld 3 – Een databasevoorbeeld

Hier is een voorbeeld van hoe we deze operator kunnen gebruiken binnen een databasequery:

SELECT ArtistName FROM Artists
WHERE ArtistName SOUNDS LIKE 'Ay See Dee Ci';

Resultaat:

+------------+
| ArtistName |
+------------+
| AC/DC      |
+------------+

En hier gebruikt het SOUNDEX() :

SELECT ArtistName FROM Artists
WHERE SOUNDEX(ArtistName) = SOUNDEX('Ay See Dee Ci');

Resultaat:

+------------+
| ArtistName |
+------------+
| AC/DC      |
+------------+

  1. PostgreSQL versus Oracle:verschil in kosten, gebruiksgemak en functionaliteit

  2. Verbroken UTF-8-codering repareren

  3. Maak PostgreSQL-database on-the-fly met Hibernate, zelfs als de DB niet bestaat

  4. Wat is het gebruik van de DECODE-functie in SQL?