Redis 基本操作

"""

摘自《Redis入门指南(第2版)》人民邮电出版社 李子骅编著

"""

基本操作:

a.    获得符合求规则的键名列表

KEYS pattern

b.   判断一个键是否存在

EXISTS key

存在返回1,否则返回0

c.    删除键

DEL key

返回删除键的个数

d.   获得键值的数据类型

TYPE key

1、字符串类型

a.    赋值与取值

SET key value

GET key

b.   递增数字

INCR key

c.    增加指定的整数(设置步长)

INCRBY key increment

d.   减少指定的整数

DECR key

DECRBY key decrement

e.    增加指定浮点数

INCRBYFLOAT key increment

f.     向尾部追加值(字符串拼接)

APPEND key value

返回追加后字符串的总长度

g.   获取字符串长度

STRLEN key

h.   同时获得/设置多个键值

MGET key [key …]

MSET key value [key value …]

i.     位操作

GETBIT key offset

SETBIT key offset value   返回该位置的旧值

BITCOUNT key [start] [end]

BITOP operation destkey key [key …]

2、散列类型

a.    赋值与取值

HSET key field value

HGET key field

HMSET key field value [field value …]

HMGET key field [field …]

HGETALL key

b.   判断字段是否存在

HEXISTS key field

存在返回1,否则返回0

c.    当字段不存在时赋值(若字段存在,则不执行任何操作)

HSETNX key field value

d.   增加数字

HINCRBY key field increment

返回增值后的字段值

e.    删除字段

HDEL key field [field …]

返回被删除的字段个数

f.     只获取字段名或字段值

HKEYS key

HVALS key

g.   获得字段数量

HLEN key

3、列表类型

a.    向列表两端增加元素

LPUSH key value [value …]

RPUSH key value [value …]

b.   从列表两端弹出元素

LPOP key

RPOP key

c.    获取列表中元素的个数

LLEN key

d.   获得列表片段(支持负索引)

LRANGE key start stop

e.    删除列表中指定的值(不知道时间复杂度是多少)

LREM key count value

返回实际删除的元素个数

count>0,从列表左边开始删除前count个值为value的元素

count<0,从列表右边开始删除前|count|个值为value的元素

count=0,删除所有值为value的元素

f.     获得/设置指定索引的元素值

LINDEX key index

LSET key index value

g.   只保留列表指定片段

LTRIM key start end

h.   向列表中插入元素

LINSERT key BEFORE|AFTER pivot value

返回插入后列表中元素的个数

i.     将元素从一个列表转到另一个列表(一次操作一个元素)

RPOPLPUSH source destination

返回操作的这个元素的值

4、集合类型

a.    增加/删除元素

SADD key member [member …]

SREM key member [member …]

b.   获得集合中的所有元素

SEMEMBERS key

c.    判断元素是否在集合中

SISMEMBER key member

存在返回1,值不存在或键不存在返回0

d.   集合间运算

SDIFF key [key …]

SINTER key [key …]

SUNION key [key …]

e.    获得集合中元素个数

SCARD key

f.     进行集合运算并将结果存储

SDIFFSTORE destinationkey [key …]

SINTERSTORE destinationkey [key …]

SUNIONSTORE destinationkey [key …]

g.   随机获得集合中的元素

SRANDMEMBER key [count]

count 省略时,随机获得一个元素

count为正数时,随机从集合中获得count个不重复的元素

count为负数时,随机从集合中获得|count|个元素,这些元素有可能相同

5、有序集合类型

a.    增加元素

ZADD key score member[score member …]

返回新加入到集合中的元素个数(不包含已存在的)

b.   获得元素的分数

ZSCORE key member

c.    获得排名在某个范围的元素列表

ZRANGE key start stop[WITHSCORES]

ZREVRANGE key start stop[WITHSCORES]

start和stop为索引,从0开始,支持负索引。WITHSCORES表示同时输出分数。

ZRANGE从小到大排序

ZREVRANGE从大到小排序

d.   获得指定分数范围的元素

ZRANGEBYSCORE key minmax [WITHSCORES] [LIMIT offset count]

min和max前加符号‘(’可表示不包含端点值,如,(min

与ZADD命令一样,支持正负无穷,+inf和-inf

e.    增加某个元素的分数

ZINCRBY key increment member

返回更改后的分数

increment为要增加的分数,也可为负数

若元素不存在,则新增元素,并分数初始为0,再执行操作

f.     获得集合中元素的数量

ZCARD key

g.   获得指定分数范围内的元素个数

ZCOUNT key min max

h.   删除一个或多个元素

ZREM key member [member…]

返回成功删除的元素数量(不包含本来就不存在的元素)

i.     按照排名范围删除元素

ZREMRANGEBYRANK key start end

返回删除的元素数量

j.     按照分数范围删除元素

ZREMRANGEBYSCORE key minmax

返回删除的元素数量

k.    获得元素的排名

ZRANK key member

ZREVRANK key member

l.     计算有序集合的交集

ZINTERSTORE destinationnumkeys key [key …] [WEIGHTS weight [weight …]] [AGGREGATE SUM|MIN|MAX]

计算多个有序集合的交集并将结果存储在destination中

返回值为destionation中元素个数

AGGREGATE为SUM(默认值)时,destination键中元素的分数是每个参与计算集合中该元素分数的和

AGGREGATE为MIN时,destination键中元素的分数是每个参与计算集合中该元素分数的最小值

AGGREGATE为MAX时,destination键中元素的分数是每个参与计算集合中该元素分数的最大值

WEIGHTS设置每个集合的权重,每个集合中的元素在进行计算时都会被乘上该集合的权重

m.  计算有序集合的并集

ZUNIONSTORE destinationnumkeys key [key …] [WEIGHTS weight [weight …]] [AGGREGATE SUM|MIN|MAX]

返回值为destionation中元素个数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值