PHP到PHP:从字符串中获取“字符串统计信息”

奥利维尔·庞斯(Olivier Pons)

我有超过800万条带有“名称”列的记录,我必须找到一种优化搜索的方法select * from ... like '%string%'

问题是您不能使用它并为此编制索引。所以我的想法是制作一个“统计”字符串,如:

[char][number of chars][char][number of chars][char][number of chars]...

char字符串中找到char的位置,然后是在该字符串中的次数。

我们可以有这样的字符串:

name='Electroperro'
result='E01c01e02l01o02p01r03t01'
nom='Tanataka'
result='T01a04k01n01t01'

好吧,你明白了。我已经在Php中做到了:

function string_stat($tab) {
    $ret="";
    foreach ($tab as $key=>$c) {
        $ret.=sprintf("%s%02d", $key, $c);
    }
    return $ret;
}
echo 'nom='.var_export($nom,true)."\n";
$stat=array();
for ($i=0; $i<mb_strlen($nom); $i++) {
    $c=mb_substr($nom, $i, 1);
    if (!isset($stat[$c])) {
        $stat[$c]=0;
    }
    $stat[$c]++;
}
echo string_stat($stat)."\n";

我想在JavaScript中为NodeJS使用完全相同的原理,以便对Mongoose做到这一点。你会怎么做?

踩踏者

我认为在这种情况下,您必须使用某些特殊的搜索引擎,例如Sphinxelasticsearch因为它是专门为此开发的,所以它将立即进行搜索。我认为在MySQL(或其他数据库)中这样做不是一个好方法。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

注意:数组到php中的字符串转换

来自分类Dev

从PHP中的字符串数组中获取HTML元素

来自分类Dev

从PHP中的字符串中获取数字

来自分类Dev

从mysql数据库获取字符串后更改php中的字符串

来自分类Dev

从字符串php regex获取内容

来自分类Dev

PHP字符串到整数异常

来自分类Dev

PHP:如何获取字符串中的重复字符

来自分类Dev

PHP CSV字符串到数组

来自分类Dev

从PHP中的字符串获取整数

来自分类Dev

从字符串中获取特定字符-PHP

来自分类Dev

替换字符串中的字符-PHP

来自分类Dev

PHP:数组到字符串的转换

来自分类Dev

PHP字符串到MySQL日期

来自分类Dev

PHP在数组中的特定字符串之后获取字符串

来自分类Dev

从任何PHP字符串获取域

来自分类Dev

字符串到Datetime在PHP?

来自分类Dev

PHP strlen()到字符串转换

来自分类Dev

在PHP中以字符串形式获取外部PHP文件

来自分类Dev

PHP CSS从字符串到数组

来自分类Dev

PHP:如何获取字符串中的重复字符

来自分类Dev

在字符串php中获取日期

来自分类Dev

计算R中串联字符串中的统计信息

来自分类Dev

php regex获取md代码块的字符串中的字符串

来自分类Dev

PHP数组到字符串的转换

来自分类Dev

PHP字符串到诠释问题

来自分类Dev

PHP 垂直字符串到水平字符串

来自分类Dev

如何在非静态字符串中获取特定字符串?php

来自分类Dev

字符串到 stdClass php

来自分类Dev

如何从 PHP 中的字符串获取特定的字符串值?