高效的MySQL搜索

时间:2011-05-30 18:31:43

标签: mysql search innodb

我使用了InnoDB表,我需要在里面进行搜索......

我想说我有行

 1. asda
 2. asdda
 3. xyz

我想搜索asda ...

它会像SELECT * FROM table WHERE myC LIKE 'asda'那样......我想要做的是显示'asda'和'asdda'因为它几乎很熟悉......有没有有效的方法来做到这一点? MATCH(myC)AGAINST'asda'仅在myISAM表类型中可用..

谢谢你的回答!

1 个答案:

答案 0 :(得分:1)

一个非常基本的版本是使用MySQL中的SOUNDEX()函数:

SELECT *
FROM table
WHERE SOUNDEX(myC) = SOUNDEX('asda');

或者你可以考虑尝试Levenshtein Distance,这会更加万无一失,但计算成本要高得多。