1. String(key-value)
set key value
添加/修改数据get key
获取数据del key
删除数据mset key1 value1 key2 value2...
设置多个键值数据mget key1 key2...
获取多个数据strlen key
字符串长度append key value
追加信息,没有则新建getset
获得原始key的值,同时设置新值incr key
字符串数值+1运算decr key
字符串数值-1运算setex
设置有效期(秒)的数据psetex
设置有效期(毫秒)的数据setnx
存在不做操作,不存在添加incrby
加法操作decrby
减法操作
2.Hash(哈希)
hset key field value
设置hash类型值hget key field
获取key下field的值hsetnx hsetnx key field value
如果key对应的field不存在,则赋值,存在时什么都不做hmset key field1 v1 field2 v2...
设置多个field,值存在就替换hmget key field1 ...
获取key的多个fieldhgetall key
获取key下的所有field和valuehkeys key
获取key对应的所有fieldhvals key
获取key对应的所有valuehincrby key field 2
增减数值hdel key field1 f2...
删除key对应的filed的值,field可以写多个hlen key
返回指定key的field数量hexists key field
key下的field是否存在
3.List(列表)
rpush key value [value …]
向队列右边添加元素lpush key value [value …]
向队列左边添加元素rpop key
从list的右边(尾部)删除元素并同时返回删除的值lpop key
从list的左边(头部)删除元素并同时返回删除的值lrange key start stop
获取队列范围内的元素linsert key BEFORE|AFTER pivot value
向指定集合key中元素前或者后插入新元素lrem key count value
左边移除队列中元素,指定移除个数和要移除的值rpoplpush key1 key2
从源list的尾部元素删除并插入到目标list的头部llen key
返回指定集合的元素个数
4.Set(集合)
sadd key member [member …]
添加若干指定元素member到key集合中spop key [count]
随机移除元素srem key member [member … ]
移除指定元素,并返回成功移除元素个数scard key
返回指定集合key中的元素数sismember key member
返回集合key中是否存在指定元素membersmembers key
返回集合key的所有元素srandmember key [count]
随机返回集合key中的一个元素,或随机返回集合key中的count的元素smove source destination member
将指定元素member从集合source中移动到集合destination中sinter key [key …]
返回所有指定集合中元素的交集sinterstore destination key [key …]
返回所有指定集合中元素的交集,并将结果保存在集合destination中sunion key [key …]
返回所有指定集合中元素的并集sunionstore destination key [key …]
返回所有指定集合中元素的并集,并将结果保存在集合destination中sdiff key [key …]
返回一个集合与其余指定集合的差集sdiffstore destination key [key …]
返回一个集合与其余指定集合的差集,并将结果保存在集合destination中
5.ZSet(有序集合)
zadd key score member[{score member}…]
创建或设置指定key对应的有序集合,根据每个值对应的score来排名,升序。例如有命令 zadd key1 10 A 20 B 30 D 40 C;那么真实排名是 A B D Czrem key member
删除指定key对应的集合中的member元素zcard key
返回指定key对应的有序集合的元素数量zincrby key increment member
将指定key对应的集合中的member元素对应的分值递增加 incrementzcount key min max
返回指定key对应的有序集合中,分值在min~max之间的元素个数zrank key member
返回指定key对应的有序集合中,指定元素member在集合中排名,从0开始切分值是从小到大升序zscore key member
返回指定key中的集合中指定member元素对应的分值zrange key min max [withscores]
返回指定key对应的有序集合中,索引在min~max之间的元素信息,如果带上 withscores 属性的话,可以将分值也带出来zrevrank key member
返回指定key对应的集合中,指定member在其中的排名,注意排名从0开始且按照分值从大到小降序- zrevrange key start end [withscores] 指定key对应的集合中,分值在 start~end之间的降序,加上 withscores 的话可以将分值以及value都显示出来
zrangebyscore key start end [withscores]
同 zrange命令不同的是,zrange命令是索引在startend范围的查询,而zrangebyscore命令是根据分值在startend之间的查询且升序展示zrevrangebyscore key max min [withscores]
同zrangebyscore命令不同的是,zrangebyscores是根据分值从小到大升序展示,而zrevrangebyscore命令是从max到min降序展示zremrangebyrank key start end
移除指定key对应集合中索引在start~end之间(包括start和end本身)的元素zremrangebyscore by min max
同zremrangebyrank命令类似,不同的该命令是删除分值在min~max之间的元素zinterstore desk-key key-count key…
获取指定数量的key的交集。例如有 key1:{10:A,20:B,30:C},key2{40:B,50:C,60:D},那么命令 zinterstore key3 2 key1 key2 意思就是 将key1 key2这两个集合的交集 赋给key3,如何获取key1与key2的交集呢。 key1中存在 A B C,key2中存在 B C D,那么交集就是 B 和 C,且 B与C对应的score也会叠加,即 key3{B:20+40=60,C:30+50=80}zunionstore desk-key key-count key…
获取指定数量key的并集,例如有 key1{10:A,20:B,30:C},key2{40:B,50:C,60:D},可以看出 A和D不是key1与key2共有的,但是并集中只要存在就会记录进去,然后B与C是共有的,即 并集的结果就是 key3{10:A,B:60,D:60,C:80}