Redis(一)-数据类型
通用命令
keys [pattern]:pattern类似正则,查询key
dbsize:查询key的总数
exist key:查询某个key是否存在
del key:删除指定key-value
expire key seconds:设置多少秒后过期
ttl key:查询剩余过期时间
persist key:取消过期时间
type key:查询类型
数据类型
redis键的类型都是字符串,值的类型包括5种数据结构,操作方式如下:
String
String类型不只是存储字符串,还可以是整型,浮点型
- get key
- del key
- set key value:不管是否存在,都设置
- setnx key value:不存在才设置
- setnxx key value:存在才设置
- getset key newvalue:设置新值并返回旧值
- append key value:追加
- strlen key:获取长度
- getrange key start end:获取指定下标的值
- setrange key index value:替换指定下标的值
批量操作:
- mget key1 key2 ...
- mset key1 value1 key2 value2 ...
作为整型或浮点型时可以使用的命令:
- incr key:自增1
- decr key:自减1
- incr key k:增k
- decr key k:减k
- incrbyfloat key value:增加一个浮点值
hash
- hget key field
- hset key field value
- hdel key field
- hexits key field
- hlen key:获取某个hash键的属性(field)的个数
批量操作:
-
hmget key field1 field2 ...
-
hmset key field1 value1 field2 value2 ...
-
hgetall key:获取所有的field-value
-
hvals key:获取所有的field-value
-
hkeys key:获取所有field
-
hsetnx key field value
-
hincrby key field intCounter
-
hincrbyfloat key field floatCounter
list
-
rpush key value1 value2 ...
-
lpush key value1 value2 ...
-
linsert key before|after value newValue
-
lpop key
-
rpop key
-
lrem key count value:从列表中删除count个与value相同的值(count可以小于0,即反方向删除),如果count为0,表示删除所有与value相同的值
-
ltrim key start end:保留指定索引的元素
-
lrange key start end:获取指定索引内的元素
-
lindex key index:获取指定索引元素
-
llen key:获取列表长度
-
lset key index newValue:将指定索引设置为新值
-
blpop|brpop key timeout:lopop的阻塞版本,timeout是阻塞超时时间,为0表示一直等待
set
-
sadd key element:添加元素(如果重复则添加失败)
-
srem key element:删除元素
-
scard setName:几何元素个数
-
sismember setName element:判断element是否在集合中
-
srandmember setName count:从集合中随机取出count个元素
-
spop setNmae:随机弹出一个元素
-
smembers setNmae:获取集合中所有元素
集合间操作:
- sdiff setName1 setNmae2:差集
- sinter setName1 setNmae2:交集
- sunion setName1 setNmae2:并集
- sdiff|sinter|sunion setName1 setNmae2 store key:将计算结果保存在key中
zset(有序集合)
- zadd key score element(可以多对)
- zrem key element(可以多个)
- zscore key element:获取指定元素分值
- zincrby key increScore element:增加或减少元素的分数
- zcard key:返回集合元素的个数
- zrank key element:返回指定元素的排名
- zrevrank key element:返回指定元素的倒序排名
- zrange key start end [withscores]:返回指定排名的元素
- zrevrange key start end [withscores]:返回指定倒序排名的元素
- zrangebyscore key minScore maxScore [withscores]:获取指定分数内的元素
- zrevrangebyscore key minScore maxScore [withscores]:获取指定分数内的元素的倒序结果
- zcount key minScore maxScore:获取指定分数范围内元素的个数
- zremrangebyrank key start end:删除指定排名范围的元素
- zremrangebyscore key start end:删除指定分数范围的元素