承接Reids一中未完成的两类 set相关的集合
Set 集合
53、sadd 向集合中添加一个或者多个元素,如果存,存入失败返回 0 sadd name "zhl" "gavin" "bieru" "zhl" "jason" 返回值 4
54、srem 移除集合中一个或多个元素 srem name
55、smembers获取对应key的集合元素 smembers name
56、srandmember 获取集合中一个随机的元素,可以接收返回的个数 srandmemeber name (2) 返回多个元素可能会重复
57、scard 获取对应key下的集合元素的数量 scard name 返回值 4
58、sdiff 获取两个集合的差集,注意:如果A包含B, sdiff A B 返回A比B多的元素, sdiff B A 返回值是空,以前者为参考元素
59、sinter 获取两个集合的交集
60、sinterstore 获取两级集合的交集并进行存储,如果key集合已经存在,就覆盖原有的集
61、sdiffstroe 获取两个集合的差集并进行存储,如果key集合已经存在,就覆盖原有的集合
62、sismember 判断指定集合中的特定的元素是否存在 sismemeber name zhl 返回1 sismember name aaa 返回 0
63、smove 将A集合中的特定元素移动到B集合中,原子操作,如果B中已经存在,会直接覆盖
64、spop 移除并返回集合的一个元素,此元素是移除的元素 spop name
64、sunion 返回一个集合的所有元素,或者指定多个集合的并集 sunion name sunion name names name1
65、sunionstore 返回一个集合的所有元素,或者指定多个集合的并集并进行存储 sunionstore tmp name names 将name、names并集之后存到tmp
SortedSet(有序集合)
66、zadd 向集合中添加一个或者多个元素,指定他的序号 比如:zadd name2 5 baidu 4 wangyi 2 sina 3 google 1 soso
67、zrange 获取元素递增排序withscores zrange name2 0 2 会返回前三个元素即: soso sina google | zrange name2 1 2 withscore 返回元素和他的序号
68、zrevrange 获取元素递减排序withscores
69、zrem 移除集合中的一个元素或者多个元素,当key不是有序集时候返回错误
70、zcard 获取集合的元素个数
71、zcount 返回指定数据之间的元素个数 比如:zcount name2 1 30 返回的是 5
72、zrangebyscore 返回指定集合之间的元素,并按照score进行递增排序,默认是包含边值,可以指定进行判断是否进行包含边界值
zrangebyscore name2 (1 5 等价于 1 < score <=5
zrangebysocre name2 (2 (5 等价于 2 < score < 5
也可以添加 withscroes 参数同时返回 score 的值
73、zrank 返回指定元素在集合中所暂的位置。和PHP数组比较类似 zrank name2 biadu 会返回4 array("baidu", "google", "sina") 中的0下标
74、zremrangebyrank 移除集合中指定的数据之间的元素 zremrangebyrank name2 0 -1 移除所有的元素
75、zremrangebyscore 移除集合中指定的score的元素 zremrangebyscroe name2 1 3 移除score等于 1 2 3 的元素
76、zscore 返回有序集合中指定的元素的score的值 zscore name2 baidu 返回 5
77、zunionstore 一个集合或者多个集合的并集并进行存储,默认情况下score 为每个集合的score的和,有WEIGHTS 和 AGGREGATE两个参数
78、zinterstore 一个集合或者多个集合的交集并进行存储,默认情况下score 为每个集合的score的和,有WEIGHTS 和 AGGREGATE两个参数