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

[经验分享] Redis中各种类型及其命令

[复制链接]

尚未签到

发表于 2016-12-20 11:13:42 | 显示全部楼层 |阅读模式
  刚刚接触Redis,在这里把命令都列出来,防止自己忘记,也能多看看
http://zk-chs.iyunv.com/blog/2253663
  在目前的redis中支持类型如下:
  1. 字符串类型 string
  2. 散列类型 hash
  3. 列表类型 linkedlist
  4. 集合类型 set
  5. 有序集合类型 sorted set
  首先介绍一些基本的命令:
  FLUSHDB:删除当前db下的数据
  FLUSHALL:删除所有
  KEYS pattern:获取符合规则的键名列表
  EXISTS key:判断键是否存在  存在返回1,不存在返回0
  DEL key [key...]:删除键   返回的是删除键的个数  key不存在返回0
  TYPE key:返回key的类型   key不存在返回none
  字符串类型:key value
  SET key value:存储一个string对,如果key已经存在则覆盖原值,不管原key是什么类型(特例)
  GET key:取得key的值,key不存在返回nil,表示无值
  MSET key value [key value...]:同时设置多个键值
  MGET key [key...]:同时获得多个键的值,不返回key
  INCR key:递增数字  当字符串为整数形式时,递增1,key不存在默认为0,返回递增后的值,原子操作
  INCRBY key increment:与上面一样,不过能增加指定大小的值,返回递增后的值
  DECR key: ...
  DECRBY key decrement:递减,用法同上
  INCRBYFLOAT key increment:增加指定浮点数,差别在于可以递增一个双精度浮点数,例如:
  redis>INCRBYFLOAT num 9.9
  APPEND key value:向键的末尾追加value,key不存在则将key设置为value,返回value长度
  STRLEN key:返回指定键值的长度,键不存在返回0
  GETBIT key index:获取指定索引的二进制值,超出范围返回0
  SETBIT key index value:设置指定索引的二进制值,超出范围则将不存在的位置赋值为0
  BITCOUNT key [start] [end]:获取指定字节范围内二进制为1的二进制位个数
  BIPOP operation destkey key [key...]:进行位运算
  BITPOS key 0/1:获取指定键的第一个二进制位值为0或1点位置
  散列类型:key field value  [field value...] 键值对形式,适合存储对象
  HSET key field value:不区分插入与更新,当为插入(field不存在)时返回1,更新(field存在)返回0
  HGET key value:获取字段值,不包含key,key不存在返回nil
  HMSET key field value [field value...]:参考HSET
  HMGET key field [field...]:参考HGET
  HGETALL key:返回所有fielld value,成对出现
  HEXISTS key field:判断字段是否存在,存在返回1,否则返回0,key不存在也返回0
  HSETNX key field value:当字段不存在时赋值,成功返回1,否则返回0
  HINCRBY key field increment:增加数字,返回增加后的字段值
  HDEL key field [field...]:删除字段,返回删除的字段个数
  HKEYS key:只获取key的所有field
  HVALS key:只获取key的所有value
  HLEN key:获取字段数量
  列表类型:key value [value...]  由双向链表实现,有序,不唯一
  LPUSH key value [value...]:向列表左端增加元素,返回增加元素后的列表长度
  RPUSH key value [value...]:同上
  LPOP key:从列表左端弹出一个元素,返回并删除元素,不存在返回nil
  RPOP key:同上
  LLEN key:返回列表中元素的个数,key不存在返回0
  LRANGE key start end:返回从索引start到end的所有元素(包括两端),支持负索引
  LREM key count value:删除列表中前count个值为value的元素,返回删除的元素个数,count=0删除全部,为负则从右边开始删除
  LINDEX key index:获得指定索引的元素值,不存在返回nil
  LSET key index value:设置指定索引的元素值,index超出则返回越界(ERR index out of range)
  LTRIM key start end:只保留列表指定片段,删除索引之外的所有元素,返回ok
  LINSERT key before|after pivot value:首先在列表中从左至右查找值为pivot的元素,根据第三个参数决定插入位置,返回插入后的列表长度
  RPOPLPUSH source destination:先执行RPOP再执行LPUSH,将元素从一个列表转入另一个列表,返回这个元素点值;如果是队列,当source与destination相同时,会不断将队尾的元素移到队首
  集合类型:key member [member...]  使用值为空的散列表实现,无序,唯一
  SADD key member [member...]:增加元素,返回成功加入的元素数量
  SREM key member [member...]:删除元素,返回成功删除的元素数量
  SMEMBERS key:获取集合中的所有元素
  SISMEMBER key member:判断元素是否在集合中,存在返回1,值或键不存在返回0
  SDIFF key [key...]:差集运算,SADD setA setB表示只存在于setA中的元素,即setA-setB
  SINTER key [key...]:交集运算,属于A且属于B多元素
  SUNION key [key...]:并集运算,属于所有集合的元素
  SCARD key:获取集合中元素个数
  SDIFFSTORE destination key [key...]:进行集合运算,并将结果存到destination键中
  SINTERSTORE destination key [key...]:同上
  SUNIONSTORE destination key [key...]:同上上
  SRANDMEMBER key [count]:随机获取集合中的元素,count为个数;当count>0时,返回不重复的元素,最多返回集合中的个数个元素;当count<0时,随机从集合中返回| count |个元素,可以重复
  SPOP key:从集合中随机弹出一个元素
  有序集合类型:key score member [score member...]  使用散列表与跳跃表实现
  ZADD key score member [score member...]:增加元素,如果已存在,则用新的score替代旧的,返回新加入到集合中的元素个数(不包含已存在到元素)
  ZSCORE key member:获得元素的分数,不存在返回nil
  ZRANGE key start end [WITHSCORES]:按照分数(score)从小到大的顺序返回索引从start到end之间的所有元素,包含两端
  ZREVRANGE key start end [WITHSCORES]:同上,只是从大到小,WITHSCORES表示同时获得分数,排序方式(0<9<A<Z<a<z)
  ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT offset count]:获得指定分数范围的元素,如果不想包含端点,可以在min或max前添加"(",
  比如ZRANGEBYSCORE setA 0 (100,LIMIT搭配count限制数量,offset表示在获得的元素列表的基础上偏移offset个元素
  ZREVRANGEBYSCORE key max min [WITHSCORES] [LIMIT offset count]:用法同上
  ZINCRBY key increment member:增加某个元素的分数,返回更改后的分数,如果不存在,则先默认赋值为0
  ZCARD key:获取集合中元素的数量
  ZCOUNT key min max:获取指定分数范围内的元素个数
  ZREM key member [member...]:删除一个或多个元素,返回成功删除的元素数量
  ZREMRANGEBYRANK key start end:按照排名范围删除元素(即索引0表示最小的值),返回删除的元素数量
  ZREMRANGEBYSCORE key min max:按照分数范围删除元素,返回删除的元素数量
  ZRANK key member:获得元素的排名,从0开始,即最小的元素排名为0
  ZREVRANK key member:与上面相反,最大的元素排名为0
  ZINTERSTORE destination numkeys key [key...] [WEIGHTS weight [weight...] ]  [AGGREGATE  SUM | MIN | MAX ]:
  计算有序集合的交集,并将结果存在destination中,destination同样以有序集合方式存储,返回destination中元素个数;WEIGHT表示权重,每个集合参与计算时会先计算权重;AGGREGATE代表结果处理方式,SUM表示相同元素的分数相加,MIN取最小值,MAX取最大值

运维网声明 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-316934-1-1.html 上篇帖子: Redis笔记(三)添加密码并修改默认端口后的主从同步 下篇帖子: Redis.conf配置文件及相关项说明(自查备用)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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