Redis的5种数据类型常用命令
字符串类型 string哈希类型 hash列表类型 list集合类型 set有序集合类型 sortedset
字符串类型 string
1.存储: set key value
2.获取: get key
3.删除: del key 返回值1:操作成功 返回值0:操作失败
4. 判断key是否存在 exists key
5.判断key的剩余生存时间(单位秒) ttl key
返回值-1 key没有过期的生存时间
6.设置key的生存时间(秒) expire key 10
7.设置key的生存时间(毫秒) pexpire key 10000
8.判断key的类型 type key
9.key重命名(存在key直接覆盖) rename oldKey newKey
10.key重命名 renamenx(带有判断逻辑不会直接覆盖) renamenx oldKey newKey
11.获取key的长度 strten key
12.获取key值的范围 getrange key [n,m]
13.设置key的新值返回旧值 getset key newValue
14.设置key值(带判断,不存在才生效) setnx key newValue
15.mset 同时设置一个或多个 mset key value key value key value
16.msetnx 用于所有给定 key 都不存在时
msetnx key value key value
键存在,操作将失败
17.mget 同时获取一个或多个key值
18.使key加1 incr key
19.指定步长增长 incrby key number
20.使key减1 decr key
21.指定步长递减 decrby key number
22.追加字符串到key值末尾 append key value
哈希类型 hash
1. 存储: hset key field value
2.存储(带判断) hmset map field value
3.批量存储key的字段和值 hmset map key1 value1 key2 value2
4.获取指定字段的值: hget key field
5.获取指定 key 的所有字段和值 hgetall key
6.获取key的所有字段 hkeys key
7.获取key所有字段的值 hvals key
8.获取key的字段个数 hlen key
9.批量获取key指定字段的值 hmget field field...
10.删除一个或多个字段: hdel key field1 field2...
11.查看key类型 type key
12.查看指定的字段是否存在 hexists key field
列表类型 list
可以添加一个元素到列表的头部(左边)或者尾部(右边)
1. lpush key value: 将元素加入列表左表
2. rpush key value:将元素加入列表右边
3. lrange key start end :范围获取
4.llen key :获取长度
5.lset key index value : 设置某个索引位置的值
6.lindex key index : 获取某个索引位置的值
7.lpop key :删除列表最左边的元素,并将元素返回
8.rpop key : 删除列表最右边的元素,并将元素返回
集合类型 set
不允许重复元素
1. 存储:sadd key value
2.返回set集合数量: scard key
3.返回差集: sdiff key1 key2
4.返回交集 : sinter key1 key2
5.返回并集: sunion key1 key2
6.返回集合中一个或多个随机数: srandmember set 3
7.判断某个元素是否属于集合
8.返回集合中所有元素: smembers key
9.移除一个或多个元素: srem key value1 value2
10.移除并返回集合中的一个随机元素
有序集合类型 sortedset
不允许重复元素,且元素有顺序.每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。
1. 存储:zadd key score value
2.查看集合中元素个数 zcard key
3.查看集合中元素的分数 zscore key value
4.返回集合中满足分数区间的元素个数: zcount key [score1,score2]
5.查看集合中元素的索引: zrank key value
6.提高集合某个元素的分数 : zincrby key score value
7.返回指定范围的集合元素: zrange key [start,end]
8.返回指定范围的集合元素(带分数): zrange key [start,end] withscores