Redisearch的基本命令2:--FT.ADD FT.ADDHASH FT.ALTER

FT.ADD

FT.ADD {index} {docId} {score} 
  [NOSAVE]
  [REPLACE [PARTIAL]]
  [LANGUAGE {language}] 
  [PAYLOAD {payload}]
  [IF {condition}]
  FIELDS {field} {value} [{field} {value}...]

上一篇博客里讲了FT.CREATE,提到index是基础,那么为什么是基础呢,以为接下来的每条命令都会用到创建过的index。

基本使用:

 ft.add dept dept1 1 fields id 001 name dept001

代表向index dept添加一条document,这条documentiddept1score为1,字段id的值为数字1,name“dept001”

选项:

    docId: 这里说是id并不代表只能说数字,可以是字符串。作为document的唯一标识。
    score: 评分,类似于zset里的score,范围从0~1,如果不知道打多少可以默认打1。
    NOSAVE:如果开启该选项我们不会在索引时保存真正的document。
    REPLACE:更新或者插入,删除原本的document
    PARTIAL (only applicable with REPLACE):在replace的时候指定对应的列
    FIELDS: 字段对应create index时的schema
    PAYLOAD {payload}: 在查询的时候使用,还不是太理解。。。
    IF {condition}: 配合replace使用,对判断语句进行判断后决定是否生效replace e.g. FT.ADD idx doc 1 REPLACE IF "@timestamp < 23323234234".
    LANGUAGE language: 指定语言,可以是中文:chinese

FT.ADDHASH

 FT.ADDHASH {index} {docId} {score} [LANGUAGE language] [REPLACE]

addhash 我觉得是真正把redis和redisearch连起来的地方,addhash 可以添加一个redishash key。这几个选项和上面的差不多就不赘述了。

例子:

hset dept2 id 002 name dept002
ft.addhash dept dept2 1

这里写图片描述

FT.ALTER

FT.ALTER {index} SCHEMA ADD {field} {options} ...

修改schema的字段结构。注意新add的会被重新索引,原本存在的不会改变。

猜你喜欢

转载自blog.csdn.net/sayWhat_sayHello/article/details/80865877