*Redis FT.DICTDEL 命令
FT.DICTDEL 从 RediSearch 拼写检查字典中删除词条。
*语法
FT.DICTDEL dict term [term ...]
*参数说明
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| dict | String | 是 | 字典名称 |
| term | String | 是 | 要删除的词条,支持多个 |
*返回值
- Integer:成功删除的词条数量
*时间复杂度
O(N),N 为删除的词条数量。
*示例
*删除单条
> FT.DICTDEL mydict redis
(integer) 1
*删除多条
> FT.DICTDEL mydict redisearch database
(integer) 2
*删除不存在的词条
> FT.DICTDEL mydict nonexistent
(integer) 0
*常见错误
| 错误 | 原因 | 解决 |
|---|---|---|
| ERR wrong number of arguments | 未提供词条 | 至少提供一个 term |
*最佳实践
- 定期清理字典中的过时或错误词条
- 批量删除减少网络往返
- 删除前可用 FT.DICTDUMP 确认字典内容
*FAQ
Q1: 删除字典中所有词条会删除字典本身吗? A: 不会,字典容器仍存在,只是变为空字典。
Q2: 可以删除不存在的词条吗? A: 可以,不会报错,返回 0。
Q3: 字典被删除后,索引的拼写检查会受影响吗? A: 字典是全局的,删除词条后,后续使用该字典的 FT.SPELLCHECK 将不再包含这些词条。