I MySQL kan du använda SOUNDS LIKE operatör för att returnera resultat som låter som ett givet ord.
Den här operatorn fungerar bäst på strängar på engelska (att använda den med andra språk kan ge opålitliga resultat).
Syntax
Syntaxen ser ut så här:
expr1 SOUNDS LIKE expr2
Där expr1 och expr2 är inmatningssträngarna som jämförs.
Denna operatör motsvarar att göra följande:
SOUNDEX(expr1) = SOUNDEX(expr2)
Exempel 1 – Grundläggande användning
Här är ett exempel på hur du använder den här operatorn i en SELECT uttalande:
SELECT 'Damn' SOUNDS LIKE 'Dam';
Resultat:
+--------------------------+ | 'Damn' SOUNDS LIKE 'Dam' | +--------------------------+ | 1 | +--------------------------+
I det här fallet är returvärdet 1 vilket betyder att de två ingångssträngarna låter likadana.
Här är vad som händer om inmatningssträngarna inte gör det låter likadant:
SELECT 'Damn' SOUNDS LIKE 'Cat';
Resultat:
+--------------------------+ | 'Damn' SOUNDS LIKE 'Cat' | +--------------------------+ | 0 | +--------------------------+
Exempel 2 – Jämfört med SOUNDEX()
Här jämförs det med SOUNDEX() :
SELECT
'Damn' SOUNDS LIKE 'Dam' AS 'SOUNDS LIKE',
SOUNDEX('Dam') = SOUNDEX('Damn') AS 'SOUNDEX()'; Resultat:
+-------------+-----------+ | SOUNDS LIKE | SOUNDEX() | +-------------+-----------+ | 1 | 1 | +-------------+-----------+
Exempel 3 – Ett databasexempel
Här är ett exempel på hur vi kan använda den här operatorn i en databasfråga:
SELECT ArtistName FROM Artists WHERE ArtistName SOUNDS LIKE 'Ay See Dee Ci';
Resultat:
+------------+ | ArtistName | +------------+ | AC/DC | +------------+
Och här använder den SOUNDEX() :
SELECT ArtistName FROM Artists
WHERE SOUNDEX(ArtistName) = SOUNDEX('Ay See Dee Ci'); Resultat:
+------------+ | ArtistName | +------------+ | AC/DC | +------------+