MySQLでは、SOUNDS LIKE
を使用できます 指定された単語のように聞こえる結果を返す演算子。
この演算子は、英語の文字列で最適に機能します(他の言語で使用すると、信頼性の低い結果が返される場合があります)。
構文
構文は次のようになります:
expr1 SOUNDS LIKE expr2
ここで、expr1
およびexpr2
比較される入力文字列です。
この演算子は、次のことを行うのと同じです。
SOUNDEX(expr1) = SOUNDEX(expr2)
例1-基本的な使用法
SELECT
でこの演算子を使用する方法の例を次に示します。 ステートメント:
SELECT 'Damn' SOUNDS LIKE 'Dam';
結果:
+--------------------------+ | 'Damn' SOUNDS LIKE 'Dam' | +--------------------------+ | 1 | +--------------------------+
この場合、戻り値は1
です。 これは、2つの入力文字列が同じように聞こえることを意味します。
入力文字列がない場合は次のようになります。 似たような音:
SELECT 'Damn' SOUNDS LIKE 'Cat';
結果:
+--------------------------+ | 'Damn' SOUNDS LIKE 'Cat' | +--------------------------+ | 0 | +--------------------------+
例2– SOUNDEX()
との比較
ここでは、SOUNDEX()
と比較されています :
SELECT 'Damn' SOUNDS LIKE 'Dam' AS 'SOUNDS LIKE', SOUNDEX('Dam') = SOUNDEX('Damn') AS 'SOUNDEX()';
結果:
+-------------+-----------+ | SOUNDS LIKE | SOUNDEX() | +-------------+-----------+ | 1 | 1 | +-------------+-----------+
例3–データベースの例
データベースクエリ内でこの演算子を使用する方法の例を次に示します。
SELECT ArtistName FROM Artists WHERE ArtistName SOUNDS LIKE 'Ay See Dee Ci';
結果:
+------------+ | ArtistName | +------------+ | AC/DC | +------------+
そしてここではSOUNDEX()
を使用しています :
SELECT ArtistName FROM Artists WHERE SOUNDEX(ArtistName) = SOUNDEX('Ay See Dee Ci');
結果:
+------------+ | ArtistName | +------------+ | AC/DC | +------------+