Redis常用五大数据类型常用命令(详细)

tech2023-09-30  101

1. Redis五大常用数据类型:String(字符串),List(列表),Hash(哈希表),Set(无序集合),Zset(有序集合)

2.Redis数据库简单使用命令:

       •DBSIZE 查看当前数据库key的数量        •KEYS * 查看key的内容        •FLUSHDB 清空当前数据库的key        •FLUSHALL 清空所有数据库的key(慎用)        •EXISTS KEY 判断key是否存在 1表示存在 0表示不存在

3.Redis-String常用命令

       •string是redis最基本的类型,一个key对应一个value,string可以包含任何数据,最大不能超过512M

       •1.set/get/del/append/strlen

1.set---设置值 eg:set name xyy 2.get---获取值 eg:get name 3.mset---设置多个值 eg:mset name xyy age 18 height 180 3.mget---获取多个值 eg:mget name age height 4.del---删除 eg:del name 5.ctrlen---查看字符串长度 eg:strlen height

       •2.incr/decr/incrby/decrby

1.incr---每次自增1 eg:incr age 2.decr---每次自减1 eg:decr age 3.incrby---自定义自增多少 eg:incrby age 5 4.decrby---自定义自减多少 eg:decrby age 5

       •3.getrange/setrange

1.getrange ---- 获取指定区间范围内的值,类似between....and的关系 2.setrange ---- 代表从第几位开始替换,下脚本从零开始 3.getrange key 0 -1 ---0 -1表示获取全部

4.Rdeis-List常用命令

       •2.redis-list(单值多value),列表是简单的字符串列表,按照插入顺序排序,可以添加一个元素列表的头部(左边)或者尾部(右边)

       •1.lpush/rpush/lrange

lpush ---- 从左边插入数据 lpush l1 1 2 3 4 5 倒序排列 rpush ---- 从右边插入数据 rpush l2 1 2 3 4 5 正序排列 lrange ---- 获取指定长度 lrange l1 0 -1 获取list01 中的所有值

       •2.lpop/rpop

lpop ---- 移除最左元素 lpop l1 删除元素5 rpop ---- 移除最右元素 rpop l1 删除元素1

       •3.lindex

lindex ---- 按照索引获取元素 lindex l1 2 获取元素3

       •4.llen

llen ---- 获取列表长度 llen l1 获取列表l1长度

       •5.lrem key

删N个value lrem l1 2 1 在l1中删除21

       •6.ltrim key

ltrim ---- 开始index结束index,截取指定范围的值后在赋值给key ltrim l1 0 2 截取l1从02的数据重新赋值给l1,l1中数据改变

       •7.rpoplpush l1 l2

rpoplpush l1 l2 ---- 将l1中最后一个压入l2中第一位

       •8.lset key index value

lset l1 0 x ---- 将l1中第一位换成x

       •9.linsert key before/after

linsert l1 before x python 在x之前加字段python linsert l1 after x java 在x之前加字段java

5.Redis-Hash常用命令

       •hash是一个键值对集合,是一个string类型的field和value的映射表。        •1.hset/hget/hmset/hmget/hgetall/hdel

设值/取值/设值多个值/取多个值/取全部值/删除值 hset user id 11 ---- 设置值 hget user id ---- 获取值 hmset anb id 11 name xyy age 18 ---- 设置多个值 hmget anb id name age ---- 获取多个值,只返回相应的值 hgetall anb ---- 返回全部值 hdel anb id ---- 删除id

       •2.hlen

hlen anb ---- 求哈希长度

       •3.hexists key

hexists name ---- 确定key中是否存在某个值 存在返回1 ,不存在返回0

       •4.hkeys/hvals

hkeys anb ---- 获取所有的键 hvals anb ---- 获取所有的值

6.Redis-Set常用命令

       •4.redis-set,set是string类型的无序不重复集合

       •1.sadd/smembers/sismember

sadd/smembers/sismember ---- 添加/查看集合/查看是否存在 sadd set01 1 2 2 3 3 自动去掉重复 smembers set01 得到set01 sismember set01 1 如果存在返回1 不存在返回0

       •2.scard

scard ---- 获取集合里面的元素个数 scard set01

       •3.srem key value

srem ---- 删除集合中元素 srem set01 3 ---- 删除set01中的3

       •4.srandmember key(原来集合不变)

srandmembe ---- 随机选出几个数 sadd set02 1 2 3 4 5 6 7 8 srandmember set02 2 ---- 随机选出两个数且原来集合不变

       •5.spop key(原来集合发生变化)

spop ---- 随机出栈 spop set01

       •6.smove key1 key2

sadd set03 x y z smove set01 set03 2 将set01中的2 移动到set03中

       •7.数学集合类

sadd set01 1 2 3 4 5 sadd set02 1 2 3 a b 差集 SDIFF set01 set02 返回 4 5 交集 SINTER set01 set02 返回 1 2 3 并集 SUNION set01 set02 返回set01 set02 中的值

7. Redis-Zset常用命令

       •Zset(有序集合)

       •1.zadd/zrange

zadd zset01 60 v1 70 v2 80 v3 90 v4 100 v5 zrange zset01 0 -1 ---- 返回集合中所有值

       •2.zrangebyscore key start end

zrangebyscore key start end----根据开始结束来取值 zrangebyscore zset01 60 70 zrangebyscore zset01 60 (90 表示不包含90 zrangebyscore zset01 60 90 limit 1 2 从第一条开始截取2

       •3.zrem key

zrem key value---- 某score下对应的value值,作用是删除元素 zrem zset01 v1 ----- 删除zset01中的v1

       •4.zcard/zcount key score 区间/zrank key values

zcard 求zset01元素总数 zcount zset01 60 9060-90中间的元素个数 zrank zset01 v2 返回1 返回对应下角标,从0开始

8.其它redis常用命令获取地址:

Redis 命令参考

最新回复(0)