MySQL 如何使用MySQL的SOUNDEX()函数和LIKE运算符从表中检索记录
正如我们知道的那样,SOUNDEX()函数用于返回一个字符串的声纳算法,用于索引名称的英语发音。在以下示例中,我们将从“student_info”表中获取数据,并将SOUNDEX()函数与LIKE运算符一起应用以从表中检索特定记录 −
mysql> Select * from Student_info;
+------+---------+------------+------------+
| id | Name | Address | Subject |
+------+---------+------------+------------+
| 101 | YashPal | Amritsar | History |
| 105 | Gaurav | Chandigarh | Literature |
| 125 | Raman | Shimla | Computers |
+------+---------+------------+------------+
3 rows in set (0.00 sec)
mysql> Select * from student_info where SOUNDEX(Name) LIKE '%G%';
+------+--------+------------+------------+
| id | Name | Address | Subject |
+------+--------+------------+------------+
| 105 | Gaurav | Chandigarh | Literature |
+------+--------+------------+------------+
1 row in set (0.00 sec)
我们已经使用列名作为SOUNDEX()函数的参数,并返回SOUNDEX值LIKE%G%的行。
请记住,SOUNDEX()函数的输出将始终包含输入的字符串的第一个字母作为其参数。例如,如果我们将“Ram”作为SOUNDEX()函数的参数传递,那么请注意输出,它包含‘R’作为第一个字符 −
mysql> Select SOUNDEX('Ram');
+----------------+
| SOUNDEX('Ram') |
+----------------+
| R500 |
+----------------+
1 row in set (0.00 sec)
mysql> Select SOUNDEX('ram');
+----------------+
| SOUNDEX('ram') |
+----------------+
| R500 |
+----------------+
1 row in set (0.00 sec)
阅读更多:MySQL 教程