重现步骤
1. 启动oncedb数据库
2. Win + R 在运行中输入 telnet 127.0.0.1 6400
3. 输入测试数据和搜索指令
//先输入任意字符
+OK
select 0
+OK
hmset user:001 name kris age 16
+OK
hmset user:002 name david age 17
+OK
hsearch user:* name ~ '' age > 16
-ERR wrong number of arguments for HSEARCH
hsearch user:* age > 16 name ~ ''
-ERR wrong number of arguments for HSEARCH
hsearch user:* age > 10 name ~ 'a'
*3
$8
user:002
$2
17
$5
david
实际结果
使用 name ~ '' 输出姓名字段,均显示错误
hsearch user:* name ~ '' age > 16
-ERR wrong number of arguments for HSEARCH
hsearch user:* age > 16 name ~ ''
-ERR wrong number of arguments for HSEARCH
当不使用字符串,输入任意一字符即正常:
hsearch user:* age > 10 name ~ a
*3
$8
user:002
$2
17
$5
david
截图
期望结果
telnet 支持所有 oncedb 指令
解决方法
添加 = * 指令,打印指定字段
测试
Ctrl + R 运行: telnet 127.0.0.1 6379
Windows 测试版下载地址: http://onceoa.com/download/oncedb-server.zip
zhsearch 工作正常: zhsearch zsetkey from to schema field operator value ...
zhorsearch 工作正常