No MySQL, você pode usar o
SOUNDS LIKE operador para retornar resultados que soam como uma determinada palavra. Este operador funciona melhor em strings no idioma inglês (usá-lo com outros idiomas pode retornar resultados não confiáveis).
Sintaxe
A sintaxe fica assim:
expr1 SOUNDS LIKE expr2
Onde
expr1 e expr2 são as strings de entrada que estão sendo comparadas. Este operador é o equivalente a fazer o seguinte:
SOUNDEX(expr1) = SOUNDEX(expr2)
Exemplo 1 – Uso básico
Aqui está um exemplo de como usar este operador em um
SELECT demonstração:SELECT 'Damn' SOUNDS LIKE 'Dam';
Resultado:
+--------------------------+ | 'Damn' SOUNDS LIKE 'Dam' | +--------------------------+ | 1 | +--------------------------+
Neste caso, o valor de retorno é
1 o que significa que as duas cordas de entrada soam iguais. Veja o que acontece se as strings de entrada não soar igual:
SELECT 'Damn' SOUNDS LIKE 'Cat';
Resultado:
+--------------------------+ | 'Damn' SOUNDS LIKE 'Cat' | +--------------------------+ | 0 | +--------------------------+
Exemplo 2 – Comparado com SOUNDEX()
Aqui é comparado com
SOUNDEX() :SELECT
'Damn' SOUNDS LIKE 'Dam' AS 'SOUNDS LIKE',
SOUNDEX('Dam') = SOUNDEX('Damn') AS 'SOUNDEX()'; Resultado:
+-------------+-----------+ | SOUNDS LIKE | SOUNDEX() | +-------------+-----------+ | 1 | 1 | +-------------+-----------+
Exemplo 3 – Um exemplo de banco de dados
Aqui está um exemplo de como podemos usar esse operador em uma consulta de banco de dados:
SELECT ArtistName FROM Artists WHERE ArtistName SOUNDS LIKE 'Ay See Dee Ci';
Resultado:
+------------+ | ArtistName | +------------+ | AC/DC | +------------+
E aqui está usando
SOUNDEX() :SELECT ArtistName FROM Artists
WHERE SOUNDEX(ArtistName) = SOUNDEX('Ay See Dee Ci'); Resultado:
+------------+ | ArtistName | +------------+ | AC/DC | +------------+