Redis學習筆記

1.String(字符串)redis

使用set生成一個鍵值對 name:'cb'(一個鍵值對應一個值),而後用get將name對應的值取出來spa

set name 'cb'對象

get name排序

2.Hash(哈希)字符串

使用name:3爲鍵值,存儲多個對象get

 

每一個 hash 能夠存儲 (2^32) -1 鍵值對(40多億)。string

3.列表hash

Redis 列表是簡單的字符串列表,按照插入順序排序。你能夠添加一個元素到列表的頭部(左邊)或者尾部(右邊)。it

實例

redis 127.0.0.1:6379> lpush runoob r
(integer) 1
redis 127.0.0.1:6379> lpush runoob m
(integer) 2
redis 127.0.0.1:6379> lpush runoob ra
(integer) 3
redis 127.0.0.1:6379> lrange runoob 0 10
1) "ra"
2) "m"
3) "r"
redis 127.0.0.1:6379>

列表最多可存儲 232 - 1 元素 (4294967295, 每一個列表可存儲40多億)。im

4.(set)集合

Redis的Set是string類型的無序集合。

集合是經過哈希表實現的,因此添加,刪除,查找的複雜度都是O(1)。

sadd 命令

添加一個string元素到,key對應的set集合中,成功返回1,若是元素已經在集合中返回0,key對應的set不存在返回錯誤。

sadd key member

實例

redis 127.0.0.1:6379> sadd runoob r
(integer) 1
redis 127.0.0.1:6379> sadd runoob m
(integer) 1
redis 127.0.0.1:6379> sadd runoob ra
(integer) 1
redis 127.0.0.1:6379> sadd runoob rabitmq
(integer) 0
redis 127.0.0.1:6379> smembers runoob

1) "ra"
2) "mo"
3) "r"

注意:以上實例中 rabitmq 添加了兩次,但根據集合內元素的惟一性,第二次插入的元素將被忽略。

集合中最大的成員數爲 232 - 1(4294967295, 每一個集合可存儲40多億個成員)。

5.有序集合(zset)

Redis zset 和 set 同樣也是string類型元素的集合,且不容許重複的成員。

不一樣的是每一個元素都會關聯一個double類型的分數。redis正是經過分數來爲集合中的成員進行從小到大的排序。

zset的成員是惟一的,但分數(score)卻能夠重複。

zadd 命令

添加元素到集合,元素在集合中存在則更新對應score

zadd key score member

實例

redis 127.0.0.1:6379> zadd runoob 0 r
(integer) 1
redis 127.0.0.1:6379> zadd runoob 0 m
(integer) 1
redis 127.0.0.1:6379> zadd runoob 0 ra
(integer) 1
redis 127.0.0.1:6379> zadd runoob 0 ra
(integer) 0
redis 127.0.0.1:6379> ZRANGEBYSCORE runoob 0 1000

1) "r"
2) "m"
3) "ra"
相關文章
相關標籤/搜索