Redis教程入门到精通-互联网分布式技术教程(4)

79 阅读4分钟

「这是我参与2022首次更文挑战的第10天,活动详情查看:2022首次更文挑战

新知识他又来了!!!

ea693994d572484f9f26b3da39032237.gif

1.6srandmember

语法:srandmember key[count]

功能

只提供key,随机返回集合中一个元素,元素不删除,依然在集合中;

提供了count时,count 正数, 返回包含count个数元素的集合,集合元素各不重复。count是负数,返回一个count绝对值的长度的集合,集合中元素可能会重复多次。

返回值:一个元素或者多个元素的集合

image.png

1.7spop

语法:spop key[count]

功能:随机从集合中删除一个或count个元素。

返回值:被删除的元素,key不存在或空集合返回nil。

image.png

1.8 smove

语法:smove src dest member

功能:将 member 元素从src集合移动到dest集合,member不存在,smove不执行操作,返回0,如果dest存在member,则仅从src中删除member。

返回值:成功返回 1 ,其他返回 0 。

image.png

1.9sdiff

语法:sdiff key key [key…]

功能:返回指定集合的差集,以第一个集合为准进行比较,即第一个集合中有但在其它任何集合中都没有的元素组成的集合。

返回值:返回第一个集合中有而后边集合中都没有的元素组成的集合,如果第一个集合中的元素在后边集合中都有则返回空集合。

image.png

1.10 sinter

语法:sinter key key [key…]

功能:返回指定集合的交集,即指定的所有集合中都有的元素组成的集合。

返回值:交集元素组成的集合,如果没有则返回空集合。

image.png

1.11 sunion

语法:sunion key key [key…]

功能:返回指定集合的并集,即指定的所有集合元素组成的大集合,如果元素有重复,则保留一个。

返回值:返回所有集合元素组成的大集合,如果所有key都不存在,返回空集合。

image.png

5)哈希类型(hash)

Redis的hash 是一个string类型的key和value的映射表,这里的value是一系列的键值对,hash特别适合用于存储对象。

哈希类型的数据操作总的思想是通过key和field操作value,key是数据标识,field是域,value是我们感

兴趣的业务数据。

1.1 hset

语法:hset  key  field  value  [field  value …]

功能:将键值对field-value设置到哈希列表key中,如果key不存在,则新建哈希列表,然后执行赋值,如果key下的field已经存在,则value值覆盖。

返回值:返回设置成功的键值对个数。

image.png

1.2 hget

语法:hget key field

功能:获取哈希表 key 中给定域 field 的值。

返回值:field域的值,如果key不存在或者field不存在返回nil。

image.png

1.3 hmset

语法:hmset key  field value [field value…]

功能:同时将多个 field-value (域-值)设置到哈希表 key 中,此命令会覆盖已经存在的field,hash表key不存在,创建空的hash表,再执行hmset.

返回值:设置成功返回ok,如果失败返回一个错误。

image.png

1.4 hmset

语法:hmset key  field value [field value…]

功能:同时将多个 field-value (域-值)设置到哈希表 key 中,此命令会覆盖已经存在的field,hash表key不存在,创建空的hash表,再执行hmset.

返回值:设置成功返回ok,如果失败返回一个错误。

image.png

1.5 hmget

语法:hmget key field [field…]

功能:获取哈希表 key 中一个或多个给定域的值

返回值:返回和field顺序对应的值,如果field不存在,返回nil。

image.png

1.6 hgetall

语法:hgetall key

功能:获取哈希表 key 中所有的域和值

返回值:以列表形式返回hash中域和域的值,key不存在,返回空hash.

image.png

1.7 hdel

语法:hdel key field [field…]

功能:删除哈希表 key 中的一个或多个指定域field,不存在field直接忽略。

返回值:成功删除的field的数量。

image.png

1.8 hlen

语法:hlen key

功能:获取哈希表 key 中域field的个数

返回值:数值,field的个数。key不存在返回0.

image.png

1.9 hexists

语法:hexists key field

功能:查看哈希表 key 中,给定域 field 是否存在

返回值:如果field存在,返回1,其他返回0。

image.png

1.10 hkeys

语法:hkeys key

功能:查看哈希表 key 中的所有field域列表

返回值:包含所有field的列表,key不存在返回空列表

image.png

1.11 hvals

语法:hvals key

功能:返回哈希表 中所有域的值列表

返回值:包含哈希表所有域值的列表,key不存在返回空列表。

image.png

1.12 hincrby

语法:hincrby key field int

功能:给哈希表key中的field域增加int

返回值:返回增加之后的field域的值

image.png hincrbyfloat

语法:hincrbyfloat key field float

功能:给哈希表key中的field域增加float

返回值:返回增加之后的field域的值

image.png

1.13 hsetnx

语法:hsetnx key field value

功能:将哈希表 key 中的域 field 的值设置为 value ,当且仅当域 field 不存在的时候才设置,否则不设置。

返回值:设值成功返回1,其他返回0.

image.png

今天又要跟大家说再见的时候啦,明天不见不散哦!!!每天学一点点,每天进步一点点!!!