设为首页 收藏本站
查看: 818|回复: 0

[经验分享] redis string和hash类型操作

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-3-23 09:32:40 | 显示全部楼层 |阅读模式
String类型及操作
String是最简单的类型,一个Key对应一个Value,sting类型是二进制安全的。Redis的string可以包含任何数据,比如jpg图片或者序列化的对象。

例子:
set name gxj
get name
输出:gxj

Setnx:设置key对应的值为string类型的value,如果key 已经存在,则返回0,nx是not exist的意思。

例子:
set name zjz
回车:则返回0,如果不存在,则会设置值

setex: 设置key对应的值为string类型的value,并指定此键值对应的有效期,单位为S
例子: setex name 10 zjz,此设置会覆盖此前设置的相同的键,但是10秒后会过期,返回 nil


setrange: 设置指定的Key的value值的子字符串

set email zdh@163.com
setrange eamil 4 qq.com
输出: zdh@qq.comm  


mset 一次设置多个key的值,成功则返回OK,表示所有值都设置了,失败则返回0表示没有任何值被设置
例子:
mset key1 k1 key2 k2 key3 k3
mget key1 key2 key3
返回: k1
      k2
      k3


msetnx : 一次设置多个key的值,成功则返回OK,表示所有值都设置了,失败返回0,表示没有任何值被设置,但是不会覆盖以前设置的key
比如原来存在key3
现在设置
msetnx key8 8 key9 9 key3 3
返回0,则key8也不存在,key3值仍然为以前的值

getrange 获取key的value的子字符串
getrange email 0 5 获取email 0到5的字符


incr 递增加1
set num 1
incr num 输出2


incrby num 5 每次加5,如果为负,则每次减

decr num 每次减1
decrby num 5 每次减5,负数则每次加5

append email 'test' 追加test到email的值中

strlen email 指定键的value的字符串长度




hash数据类型
redis hash 是一个string类型的field和value的映射表,它的添加和删除操作,都是0和1,hash特别适合于存储对象,相较于将对象的每个字段存为单个的string类型,将一个对象存储在hash中,会占用更少的内存空间,并且更方便的存储整个对象。

hset user001 name zjz
hset user001 age 1
hget user001 name 输出:zjz

hsetnx: 设置hash filed为指定值,如果key不存在,则创建,否则返回0

hmset,hmget 批量设置,获取

hincrby user001 age 2 一次增加2岁,负则减少

hexists user001 age 查看age是否存在

hlen user001 返回hash对象设置的键数

hdel user001 age 删除键

hkeys user001 返回hash表中所有的字段

hvals user001 返回hash表中所有的value

hgetall user001 返回hash表中所有的键和值


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-49660-1-1.html 上篇帖子: redis list数据类型 下篇帖子: redis配置文件的讲解
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表