一.set型別
set是乙個集合,它是string型別的無序集合,set是通過hash table實現的,新增,刪除,查詢的時間複雜度都是o(1),對於集合我們可以取並集,交集,差集。通過這些操作我們可以實現sns中好友推薦和blog的tag
set常用命令:
(1)sadd:
向乙個集合中新增乙個元素。例如:sadd set1 hello
(2)smembers
檢視集合中的所有元素。例如:smembers set1
(3)srem
刪除集合中乙個指定的元素。例如:srem set1 hello
(4)spop
隨機彈出set集合中德乙個元素。例如:spop set1
(5)sdiff
求兩個集合的差集,比如sdiff set1 set2,表示保留set1中與set2不同的所有元素。
(6)sdiffstore
將返回的差集存進乙個集合。例如:sdiffstore set3 set1 set2,表示把set1與set2的差集存進
集合set3。
(7)sinter
返回給定兩個集合的交集。例如:sinter set1 set2,表示返回set1和set2的交集。
(8)sinterstore
將兩個集合的交集存進乙個集合。例如:sinterstore set3 set1 set2,表示把set1和set2的交集
存進集合set3。
(9)sunion
返回給定兩個集合的並集。例如:sunion set1 set2,表示返回set1和set2的並集。
(10)sunionstore
將兩個集合的並集存進乙個集合。例如:sunionstore set3 set1 set2,表示把set1和set2的並集
存進集合set3
(11)smove
從第乙個key對應的set中移除member並新增到第二個對應的集合中。
例如:smove set1 set2 hello,表示把set1中的hello元素移動到set2中。
(12)scard
返回key對應集合的元素的個數。例如:scard set1。
(13)sismember
判斷某乙個元素是否為集合的元素。比如:sismember set1 hello,表示判斷hello是否為set1的中
的元素。
(14)srandmember
隨機返回名稱為key的set的乙個元素。例如:srandmember set1。
二.zset型別
zset是在set的基礎上增加了順序,形成乙個有序的集合。
zset的常見操作:
(1)zadd
向有序集合zset中增加乙個元素。例如:zadd zset 1 hello
(2)zrange
輸出zset中指定範圍內的的所有元素,按照score從小到大的順序。
例如:zrange zset 0 -1 withscores,表示輸出有序集 合zset中所有的元素,並且輸出順序號。
(3)zrem
刪除名稱為key的zset集合中的元素member。例如:zrem set1 hello。
(4)zincrby
把有序集合zset中的指定元素的序列號加上指定的值。例如:zincrby zset 4 hello
(5)zrank
返回名稱為key的zset集合中元素的排名,按照下標從小到大的排名。例如:zrank zset hello。
(6)zrevrank
返回名稱為key的zset集合中元素的排名,按照下表從大到小的排名。例如:zrevrank zset hello。
(7)zrevrange
按照score從大到小的順序輸出集合中所有元素。例如:zrevrange zset 0 -1 withscores。
(8)zrangebyscore
返回集合中給定區間的元素。例如:zrangebyscore zset 2 3 withscores
(9)zcount
返回集合中score在給定區間的數量。zcount zset 2 3
(10)zcard
返回集合中元素的個數。
(11)zremrangebyrank
按照索引來刪除給定區間的元素。例如:zremrangebyrank zset 1 2
(12)zremrangebyscore
刪除score在指定範圍內的元素。例如:zremrangebyscore zset 1 2
Redis Set型別常用操作命令
集合 set 的特點 無序性 唯一性,結合裡面的值是唯一的。1.sadd key value1 value2.value3 建立並增加元素到集合 sadd student john lucy 當再次新增lucy時,會不成功,因為集合裡面已經有lucy元素 2.smembers key 檢視集合中的所...
Redis set 型別與效能檢測
127.0.0.1 6379 sadd num 1 2 3 4 5 建立整數集合 integer 5 127.0.0.1 6379 object encoding num intset 127.0.0.1 6379 sadd num a 在整數集合中加入非整數元素 integer 1 127.0.0...
zset資料型別
應用場景 排行榜redis有序集合型別鍵的設定 1.zadd 將乙個或多個 member 元素及其 score 值加入到有序集 key 當中 2.zincrby 為有序集 key 的成員 member 的 score 值加上增量 increment 可負 redis有序集合型別鍵的查詢 1.zcar...