index的update现在是删除现有的整个document,然后替换新传入的doc,有没有办法只更新doc下面的某一个field的方式呢?
update() 方法 public XSIndex update(XSDocument $doc, bool $add=false) $doc XSDocument $add bool 是否为新增文档, 已有数据中不存在同一主键的其它数据 {return} XSIndex 返回自身对象以支持串接操作 源码: sdk/php/lib/XSIndex.class....
[quote='hina' pid='7464' dateline='1398851554'] 感觉XUNSEARCH资料很少啊 [/quote] 是呢...我是看了update的源码才确认的update操作会删除再重新add 现在我只想更新doc下面的某一个field....
不对呢,仔细看一下这里,http://www.xunsearch.com/doc/php/guide/index.rebuild // 这里是开始,所有的索引操作都放在里面,update操作会先执行删除操作,然后执行add操作,update也可以的 $index->beginRebuild(); $data = array(); $doc = new XSDocument; $doc->...
在 `Xunsearch PHP-SDK` 中,更新、修改文档和[添加文档](index.add)的做法非常的类似, 只不过调用的是 [XSIndex::update],并且在内部处理上有所区别。 如果索引数据库中已存在主键值相同的文档,那么相当于先删除原有的文档,...
请问: $index->add($doc)能调试的不,我在自己的代码加上这个,但search的时候搜索不到新add的数据 文档上写的返回的index对象,不知道能不能调试啊[hr] 按大大指示,加上了 $index->flush(); 还是没效果,这个add方法有返回提示吗,API上...
...comment as c on g.gid = c.gid where ..... group by g.gid 然后,用$index->add($doc), 一条条加入 2> 更新索引时,我又重新跑一次sql, select * from goods as g left join order as o on g.gid = o.gid left join comment as c on g.gid = c.gid where ..... group by g.gid 获...
哦这样啊 谢谢了,祝愿xs 越来越好,顶了。[hr] 这样子对否? $doc = new XSDocument; $doc->setFields($data); $index->beginRebuild(); $index->add($doc);//如果写update 行不行? $index->endRebuild();
...作方式来解决一些循环的数据。 以下是官方提供的: $index->openBuffer(); // 开启缓冲区,默认 4MB,如 $index->openBuffer(8) 则表示 8MB // 在此进行批量的文档添加、修改、删除操作 ... $index->add($doc); ... $index->del($doc); ... $index->up...
...缓冲区的默认 大小为 `4MB`,如需修改请传入数字作为 [XSIndex::openBuffer] 的参数。 ~~~ [php] $index->openBuffer(); // 开启缓冲区,默认 4MB,如 $index->openBuffer(8) 则表示 8MB // 在此进行批量的文档添加、修改、删除操作 ... $index->add($doc); .....