微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php – 用于anagram解算器的Mysql多个查询

我有一个简单但很大的表,叫做’字典’,有两列. Id和单词.
我有一个PHP anagram算法可以创建给定单词的所有可能组合.如果我的字典中存在该单词并且如果是则显示它,我想知道.但我必须使用太多的查询.例如,9个字母的单词是362880个组合.有没有想过如何减少db调用

解决方法:

虽然我不知道这样的查询有多高效,但是只针对一个查询尝试这样的事情:

$possibilities = array( "at", "ta");
$sql = 'SELECT * FROM dictionary_table 
            WHERE word IN ("' . implode( '", "', $possibilities) . '")';

这将生成SQL查询

SELECT * FROM dictionary_table 
            WHERE word IN ("at", "ta")

好处是查询是动态的,所以无论有多少美元的可能性,这在理论上都可行.为了提高效率,我肯定会将单词列索引.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐