您好,登錄后才能下訂單哦!
redis常用數據類型總結
redis是以鍵值對key-value的形式來存儲數據,而存儲的數據類型有5種String,List,Set,Map,以及有序集合
這五種數據類型操作的命令多有相似,經常混淆,閑暇之余,總結一番。
類型一:String
1append key value
如果key存在,則把value追加到原來的value后面
如果可以不存在,則以key為鍵,value為值建立新的。
2get key
返回key所關聯的字符串。如果key不存在則返回nil
3bitcount key
返回給定字符串中,被設置為1的比特位的數量
4decr key
key中存儲的數字值減一
5decrby key num
key 中所存儲的值減去 num
6getbit key offset
對key所存儲的字符串值,獲取指定偏移量上的位
7getrange key start end
返回key中存儲的start到end之間的字符串
8getset key value
將給定key的值設為value,并返回key原來的值
9incr 將key中存儲的數字值加一
10incrby key num
將key中所存儲的值加num
11mget key1 key2 ...
返回所有給定key的值
12mset key1 value1 key2 value2 ...
同時設置多個鍵值對
13setex key seconds value
設置key value 鍵值對,并且設置key的生存時間
14strlen key
返回key所存儲值得長度
類型二:HASH(哈希)又稱散列
1hset key-name key value
在名為key-name 的hash表中設置一堆鍵值對 key value
2hsetnx key-name key value
在名為key-name 的hash表中設置一堆鍵值對 key value,當且僅當key不存在。
3hmset key-name key1 value1 key2 value2 ...
為名字叫key-name的散列設置多個鍵值對。
4hget key-name key
獲得key-name散列表中名字為key的值
5hmget key-name key1 key2 ...
獲得名字為key-name的散列表中鍵為key1 key2 ...的值
6hgetall key-name
獲得散列包含的所有鍵值對
7hvals key -name
獲取散列包含的所有值
8hkeys key -name
獲取散列包含的所有鍵
9hlen key-name
返回散列包含的鍵值對數量
10hdel key-name key1 key2
刪除散列里一個或多個值
11hincrby key-name key increment
將名字為key-name的散列中,將鍵key所存儲的值加上整數increment
類型三:列表(List)
1lpop key-name
移除并返回列表key的頭元素(最左端的元素)
2rpop key-name
移除并返回列表key的尾元素(最右端的元素)
3lpush key-name value1 value2
將一個或多個值推入列表的表頭(最左端)
4rpush key-name value1 value2 ...
將一個或多個值推入列表的尾部(最右端)
5lpushx key-name value
將值value插入列表key-name的表頭,當且僅當key存在且是列表
6rpushx key-name value
將值value插入列表key-name的尾部,當且僅當key存在且是列表
7ltrim key start stop
對一個列表進行修剪,保留指定區間內的元素,不再指定區間的元素將被刪掉。
8lset key-name index value
將key-name列表下表為index的值設為value
9lrange key-name start stop
返回列表key-name中指定區間內的元素。
10llen key-name
返回列表key-name的長度
類型四:集合(SET)
1sadd key-name item1 item2 ...
將一個或多個元素添加到集合key-name中
2srem key-name item1 item2
從集合key-name 里移除一個或多個元素
3scard key-name
返回集合包含的所有元素的數量
4sismember key-name item
判斷item元素是否是集合key-name的成員
5smembers key-name
返回key-name中的所有成員
6sdiff key-name1 key-name2 ..
返回第一個集合和其他集合的差集運算后的元素
7sinter key-name1 key-name2
返回那些同時存在于所有集合中的元素,交集運算
8sunion key-name1 key-name2 ...
返回至少存在于一個集合中的元素,并集運算
9smove key-name1 key-name2 item
將item元素從key-name1集合移動到key-name2集合
10spop key-name
移除并返回key-name集合中隨機一個元素
類型五:有序集合
1zadd key-name score1 member1 [score2 member2]
將一個或多個member元素及其分值score添加到key-name集合中
2zrem key-name member1 member2 ...
移除有序集和key-name中 一個或多個成員
3zcard key-name
返回有序集合的元素數量
4zrank key-name member
返回元素member在有序集合里的排名
5zcount key-name min max
返回分值介于min max之間的成員數量
6zscore key-name member
返回member成員在key-name有序集合中的分值
7zrange key-name start stop
返回有序集合中排名介于start stop之間的元素。
8zincrby key-name increment member
在有序集合key-name中為member成員加上增量increment。
如果有不同見解歡迎大家相互討論共同進步@_@
參考有josiah L .carlson redis in action
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。