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 | +------------+