【Redis】redis的数据类型以及常用命令

前言

    Redis中所有的数据都是字符串。命令不区分大小写,key是区分大小写的。Redis是单线程的。Redis中不适合保存内容大的数据。

数据类型

1、string

命令

(1)get、set(存取)。示例:set str1 abc;get str1

(2)keys *(查询所有key)。

(3)incr(加1);decr(减1)。示例 incr key1;decr key1(对该key对应的value进行加减,必须保证value可以转换为整数<字符串形式保存>)

(4)del(删除key)。示例:del key1

2、hash

    每个key对应一个hash,hash为value,其中hash中还有hash的key-value。

命令

(1)hget、hset(存取)。示例:hset hash1 field1 value1,hset hash1 field2 value2;hget hash1 field1

(2)hkeys(查询某个key下面所有的hashkey,即所有的field)。示例:hkeys hash1

(3)hvals(查询某个key下面所有的hashvalue)。示例:hvals hash1

(4)hgetall(查询某个key下面所有的hashkey-hashvalue)。示例:hgetall hash1

(5)hdel(删除hashkey以及对应的hashvalue)。示例:hdel hash1 field1

3、list

    每个key对应一个list,list元素有顺序,可以重复。

命令

(1)lpush(从左边添加一个list)。示例:lpush list1 1 2 3 4 5

(2)rpush(从右边添加一个list)。示例:rpush list1 a b c d e

(3)lrange key 参数1 参数2(从左边开始查看元素,参数1为起始位置,参数2为终止位置)。示例:lrange list 0 -1,即为从左边开始查看全部元素,如上元素取出即为:5 4 3 2 1 a b c d e

(4)lpop(从左边开始取元素,取出后从该list删除该元素)。示例:lpop list1

4、set

    set中元素没有顺序且不能重复,如果有重复会被过滤掉(可以用set去重)。

命令

(1)sadd(添加元素)。示例:sadd set1 a b c

(2)srem(删除元素)。示例:srem set1 a

(3)smembers(查看set中元素)。示例:smembers set1

(4)sdiff(查看两个set集合的差集,前面集合减去后面集合)。示例:sdiff set1 set2

(5)sinter(查看两个集合的交集)。示例:sinter set1 set2

(6)sunion(查看两个集合的并集)。示例:sunion set1 set2

5、sorted set

    有顺序的set集合。很耗费性能。

命令

(1)zadd(添加元素)。示例:zadd zset1 1 a 3 b 2 c 5 d 4 e(按照元素前面的分数进行升序排列)

(2)zrange key 参数1 参数2(查看元素,参数1为起始位置,参数2为终止位置)。示例:zrange zset1 0 -1,如上添加的zset1,则为a c b e d

(3)zrem(删除元素)。示例:zrem zset1 a

(4)zrevrange key 参数1 参数2(查看降序排列后的集合,参数1,参数2同上)。示例:zrevrange zset1 0 -1

(5)withscores(查看命令之后加此命令,可同时查看该值对应的分数)。示例:zrange zset1 0 -1 withscores

设置key的有效时间

(1)expire(设置过期时间)。示例:expire key1 100(设置key1的过期时间为100秒)

(2)ttl(查看过期剩余时间)。示例:ttl key1(结果为——正数:正在倒计时;-1:永久存在;-2:不存在)

(3)persist(清除过期时间,使该key永久保存)。示例:persist key1

总结

    redis一共五种数据类型,一般常用的有string和hash,不是非常必要的情况下,不推荐使用sorted set,非常消耗资源。

猜你喜欢

转载自blog.csdn.net/sds15732622190/article/details/80073898
今日推荐