list类型及操作
list是一个链表结构,主要功能是push、pop、获取一个范围的所有值等等,操作中key
理解为链表的名字。Redis的list类型起始就是一个每个子元素都是string类型的双向链表。我们可以通过push、pop操作从链表的头部或者尾部添加删除元素,这样list既可以作为栈,又可以作为队列。
lpush方法
在key对应list的头部添加字符串元素。返回元素个数。
rpush方法
在key对应list的尾部添加字符串元素。
linsert方法
在key对应list的特定位置前或后添加字符串。
lset方法
设置list中自定下标的元素值。
lrem方法
从key对应list中删除n个和value相同的元素。(n<0从尾删除,n=0全部删除)
ltrim方法
保留指定key的值范围内的数据。
lpop方法
从list的头部删除元素,并返回删除元素。
rpop方法
从list的尾部删除元素,并返回删除元素。
rpoplpush方法
从第一个list的尾部移除元素并添加到第二个list的头部。
lindex方法
返回名称为key的list中index位置的元素。
llen方法
返回key对应list的长度。
set类型和zset类型
一、sets类型及操作
set是集合,它是string类型的无序集合。set通过hash table实现,添加 、删除和查找的复杂度都是0(1)。对集合可以取 并集、交集、差集。
sadd方法
向名称为key的set中添加元素。
srem方法
删除名称为key的set中的元素。
spop方法
随机返回并删除名称为key的set中的一个元素。
sdiff方法
返回所有给定key与第一个key的差集。
sdiffstore方法
返回所有给定key与第一个key的差集,并将结果存为另一个key。
sinter方法
返回所有给定key的交集。
sinterstore方法
返回所有给定key的交集,并将结果存为另一个key。
sunion方法
返回所有给定key的并集。
sunionstore方法
返回所有给定key的并集,并将结果存为另一个key。
smove方法
从第一个key对应的set中移除member并添加到第二个对应的set中。
scard方法
返回名称为key的set元素的个数。
sismember方法
测试menber是否是名称为key的set的元素。
srandmember方法
随机返回名称为key的set的一个元素,但不删除元素。
二、sorted sets类型及操作
sorted set 是set的升级,它在set的基础上增加了一个顺序属性,这一属性在修改添加元素的时候可以指定,每次指定后,zset会自动从新按新的值调整顺序。
zadd方法
向名称为key的zset中添加元素member,score用于排序。如果元素存在,则更新器顺序。
zrem方法
删除名称为key的zset中的元素member。
zincrby方法
如果在名称为key的zset中已经存在元素member,则钙元素的score增加increment,否则向集合中添加 该元素,器score的值为increment。
zrank方法
返回名称为key的zset中member元素的排名(按score从小到大排序),即下标
zrevrank方法
返回名称为key的zset中member元素的排名(按score从大到小排序),即下标
zrange方法 ( withscores 显示顺序号)
返回名称为key的zset(按score从小到大顺序)中的index从start到end的所有元素
zrevrange方法
返回名称为key的zset(按score从大到小顺序)中的index从start到end的所有元素
zrangebyscore方法
返回集合中score在给定区间的元素
zcount方法
返回集合中score在给定区间的数量
zcard方法
返回集合中元素的个数
zremrangebyrank方法
删除集合中排名在给定区间的元素
zremrangebyscore方法
删除集合中score在给定区间的元素