Redis的常用命令,Redis常用操作命令

1.Redis功能操作的命令
clear 清屏
服务器端 两次ctrl + c 退出
客户端 一次 Ctril + c 退出 / esc
help 命令名称

2.string类型的命令
get key 获取key对应value的值
set key value 设置数据,如果key存在就覆盖
mset key1 value1 key2 value2… 设置多个key跟 value
mget key1 key2 获取多个key对应value
append key value key如果存在就追加否则新建
del key 删除key
strlen key 获取key对应的value字符个数

nil 表示空
integer0 失败 integer1 成功

3.string的增量
incr key 自增1
decr key 自减1
incrby key 自增值
decrby key 自减值

4.string的时效设置
setex key 时间(秒/毫秒) value
注意 如果重新对key做了set动作 之前的key会覆盖

5.hash类型的基本命令
hset key field value
hget key field 单个field字段的value
hgetall key 获取所有 field+value的值
hdel key field 删除单个的field
hmset key field1 value1 field2 value3 设置多个
hmget key field1 field2
hkeys key 获取所有的filed
hvals key 获取所有的filed对应的value
del key 删除整个key
hincrby key filed incrment 对field进行指定增量
hlen key 获取value中的hash键值对个数
hsetnx key filed value 设置filed 字段 如果不存在则添加 如果存在则不设置

6.list类型的基本命令
lpush key value1 value2 value3 value4…
rpush key value1 value2 value3 value4…
lrange key start stop 一般我们获取lrange list1 0 -1 获取全部元素
lindex key 索引 根据索引查找元素
llen key 获取集合中元素的个数
lpop key 从左侧弹出元素,也就是删除元素并返回删除的元素
rpop key 从右侧弹出元素,也就是删除元素并返回删除的元素
blpop key1 [key2] timeout 设置具体的时间进行阻塞等待从左边获取元素
brpop key1 [key2] timeout 设置具体的时间进行阻塞等待从右边获取元素
lrem list1 1 b 删除list1中的元素b 只删除一个

7.set类型的基本命令
sadd key value1 value2… 添加元素
smembers key 获取所有元素
scard set1 获取元素的总量
sismember key value 判断set体系中是否包含某个元素 包含返回1 不包含返回0
srandmember key 1 随机从set体系中获取一个元素
spop key 随机从set体系中获取一个元素并移除
sinter u1 u2] 交集
sunion u1 u2 并集
sdiff u1 u2 差集
sinterstore u3 u1 u2 交集取出存入新的集合
sunionstore u3 u1 u2 并集取出存入新的集合
sdiffstore u3 u1 u2 差集取出存入新的集合
smove u2 u4 [需要移动的数据] 将u2 中指定的元素移动到u4

8.sort_set的基本命令
zadd key score value 存入元素 zadd scores 99 zhangsan
zrange scores 0 -1 从低到高显示value信息
zrange scores 0 -1 withscores 从低到高显示value信息(包含了score信息)
zrevrange scores 0 -1 从高到低显示value信息
zrevrange scores 0 -1 withscores 从高到低显示value信息(包含了score信息)
zrem scores value 根据value删除元素
zrangebyscore scores 60 90 withscores 表示根据60 到90的区间去进行查找
zrangebyscore scores 60 90 withscores limit 0 2 表示根据60 到90的区间去进行查找,只要从0开始 需要2个
zremrangebyrank scores 0 1 根据索引删除含0也含1
zremrangebyscore socres 99 100根据数据范围删除含min也含max
zcard scores 统计集合中的总数据量
zcount scores min max 根据范围统计总量

合并操作
添加3条数据
zadd s1 50 aa 60 bb 70 cc
zadd s2 60 aa 70 bb 80 cc
zadd s3 70 aa 80 bb 90 cc 100 dd

zinterstore ss 3 s1 s2 s3 合并几个集合中交集的部分
zunionstore sss 3 s1 s2 s3 合并几个集合中并集的部分

zadd movies 143 aa 97 bb 201 cc
zrank movies bb返回的是默认排序(升序)中,该元素的索引
zrevrank movies cc 返回的是排序(降序)中,该元素的索引

zscore movies cc 获取cc对应的score
zincrby movies 1 cc 对cc进行加1 指定增量

sorted_set底层存储还是基于set结构的,因此数据不能重复,如果重复添加相同的数据,score值将被反复覆盖,保留最后一次修改的结果

9.redis的通用命令
del key 删除所有的类型key
exists key 判断key是否存在
type key 获取key对应的value类型
expire str 3 表示str这个key存在的时间是3秒
ttl key 获取该key剩余的时效 注意如果key不存在返回-2

ttl这个命令,会返回3种结果,一是在有效期返回有效时长,而是不在有效期返回-2,三是既没有有效期又存在返回-1

persist key 切换key的时效为永久

keys * 查询所有
keys qi* 查询所有以qi开头
keys qianfeng 查询所有以qianfeng结尾
keys ??qianfeng 查询所有前面两个字符,后面以qianfeng结尾
keys user:? 查询所有以user:开头,最后一个字符任意
keys u[st]er:1 查询以u开头,以er:1结尾,中间包含一个字母,s或t
rename key newkey //如果已经有newkey的数据,直接覆盖
renamenx key newkey //如果已经有,则失败,没有则设置

排序
lpush aa 22
lpush aa 11
lpush aa 33
sort aa

切换数据库
select index index表示数据库编号 编号从0开始
退出客户端连接
quit
数据移动
move key index index表示数据库编号 编号从0开始
查看数据库中key的总量
dbsize
flushdb(删除当前库的数据)
flushall(删除所有库的数据)


版权声明:本文为weixin_43110289原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。