Maison > Article > base de données > Linux取得Redis数据库中hash类型的所有feild或者所有value
redis非常好用,但是对于习惯了关系型数据库的人来说,查询起来还是比较麻烦,尤其是对于一个hash类型的key,想取得所有的feild域
Redis非常好用,但是对于习惯了关系型数据库的人来说,查询起来还是比较麻烦,尤其是对于一个hash类型的key,想取得所有的feild域,,官方并没有直接的接口,但可以通过linux来帮助实现,方法如下:
前提,我们已经有了一个hash类型的key,myhash,
hset myhash name zl
hset myhash addr hz
第一,先新建一个.cmd文件,如getAll.cmd,内容为hgetall myhash
第二,执行命令redis-cli getAll.result
第三,取出getAll.result中的奇数行即为hash中的feild,偶数行为hash中的value
使用一条命令实现取得myhash中所有的值,就是:
echo "hgetall myhash" | redis-cli -p 6380 -a yourPwd | awk 'NR%2==0'
如果是取得所有的feild为:
echo "hgetall myhash" | redis-cli -p 6380 -a yourPwd | awk 'NR%2==1'
Redis 的详细介绍:请点这里
Redis 的下载地址:请点这里
推荐阅读:
Redis集群明细文档
Ubuntu 12.10下安装Redis(图文详解)+ Jedis连接Redis
Redis系列-安装部署维护篇
CentOS 6.3安装Redis
Redis配置文件redis.conf 详解