目录
LRANGE key star end:返回一段距离范围内所有的元素
BLPOP和BRPOP:它在没有该元素的时候会等待一段时间,而不是直接返回nil
SADD key member:向set中添加一个或者多个元素
SISMEMBER key member:判断元素是否存在在key中
SINTER 和 SDIFF 和 SUNION 是实现Set类型的交集、差集、并集操作
双向链表(Doubly Linked List)是一种常见的链表数据结构,与单向链表不同,它的每个节点除了包含指向下一个节点的指针外,还包含一个指向前一个节点的指针。这使得双向链表可以在两个方向上遍历链表,从头部到尾部,或者从尾部到头部。
跟java中的Linkedlist十分的类似:
一个是从列表的左侧开始插入,一个是从列表的右侧开始插入
一个是从列表的左侧开始取出,一个是从列表的右侧开始取出
- 192.168.1.209:6379> LPUSH users 1 2 3
- (integer) 3
- 192.168.1.209:6379> RPUSH users 4 5 6
- (integer) 6
- 192.168.1.209:6379>
- 192.168.1.209:6379> LPOP users 1
- 1) "3"
- 192.168.1.209:6379> RPOP users 1
- 1) "6"
- 192.168.1.209:6379>
- 192.168.1.209:6379> LRANGE users 1 2
- 1) "1"
- 2) "4"
- 192.168.1.209:6379> LRANGE users 2 3
- 1) "4"
- 2) "5"
- 192.168.1.209:6379> LRANGE users 0 3
- 1) "2"
- 2) "1"
- 3) "4"
- 4) "5"
- 192.168.1.209:6379>
- 192.168.1.209:6379> BLPOP users2 100 # 等待了18.5秒,当从其他机器上插入后,出现数据
- 1) "users2"
- 2) "clay"
- (18.50s)
-
- 127.0.0.1:6379> LPUSH users2 clay # 添加了users2这个key
- (integer) 1
- 127.0.0.1:6379>
-
-
- 192.168.1.209:6379> BLPOP users3 10 # 不存在该key(users3)
- (nil)
- (10.06s)
- 192.168.1.209:6379>
栈的入口和出口都在同一边,而且必须先进入数据,才能输出数据
因此需要我们的入口和出口都在同一边,只用LPUSH和LPOP来输入输出数据,或者是只使用RPUSH和RPOP来输入输出数据
队列的入口和出口不在同一边
因此需要我们的入口和出口不在同一边,只用LPUSH和RPOP来输入输出数据,或者是只使用RPUSH和LPOP来输入输出数据
首先它是队列,因此入口和出口不在同一边
而且出队的时候必须采用BLPOP和BRPOP来输出,形成阻塞的效果
- 192.168.1.209:6379> SADD s1 a b c
- (integer) 3
- 192.168.1.209:6379>
- 192.168.1.209:6379> SREM s1 b
- (integer) 1
- 192.168.1.209:6379>
- 192.168.1.209:6379> SCARD s1
- (integer) 2
- 192.168.1.209:6379>
- 192.168.1.209:6379> SISMEMBER s1 a
- (integer) 1
- 192.168.1.209:6379> SISMEMBER s1 b
- (integer) 0
- 192.168.1.209:6379>
- 192.168.1.209:6379> SMEMBERS s1
- 1) "a"
- 2) "c"
- 192.168.1.209:6379>
注:详细的SortedSet类型命令我们能通过命令行的help @sortedset来查看
- 192.168.1.209:6379> ZADD stus 85 Jack 89 Lucy 82 Rose 95 Tom 78 Jerry 92 Amy 76 Miles
- (integer) 7
- 192.168.1.209:6379>
- 192.168.1.209:6379> ZREM stus Tom
- (integer) 1
- 192.168.1.209:6379>
- 192.168.1.209:6379> ZSCORE stus Amy
- "92"
- 192.168.1.209:6379>
- 192.168.1.209:6379> ZRANK stus Rose
- (integer) 2
- 192.168.1.209:6379>
- 192.168.1.209:6379> ZCOUNT stus 0 80
- (integer) 2
- 192.168.1.209:6379>
- 192.168.1.209:6379> ZINCRBY stus 2 Amy
- "94"
- 192.168.1.209:6379>
- 192.168.1.209:6379> ZREVRANGE stus 0 2
- 1) "Amy"
- 2) "Lucy"
- 3) "Jack"
- 192.168.1.209:6379>
- 192.168.1.209:6379> ZRANGEBYSCORE stus 0 80
- 1) "Miles"
- 2) "Jerry"
- 192.168.1.209:6379>