Redis常用命令

Redis常用命令

string类型

添加/修改多个数据

mset key1 value1 key2 value2 ...

获取多个数据

mget key1 key2

获取字符串个数

strlen key

追加数据到原始数据后部(不存在则新建)

append key value

字符串为数字操作(递增递减)

//数值的最大值为Java long的最大值 Long.MAX_VALUE
//递增
incr key
//递增指定数值
incrby key 指定数值
//递增指定小数
incrbyfloat key 指定数值
//递减
deor key
//递减指定数值
deorby key 指定数值

设置指定数据的生命周期

setex key 秒 value
psetex key 毫秒 value

hash类型

添加数据

//添加单个
hset key field value
//添加多个
hmset key field1 value1 field2 value2
//添加数据 如果field存在则不做添加,不存在则添加
hsetnx key field value

获取数据

//获取单个数据
hget key field
//获取多个数据
hmget key field1 field2
//获取全部数据
hgetall key

删除数据

//删除单个数据
hdel key field1 ...
//删除全部数据
del key

查看当前hash存在几个数据

hlen key

查看是否存在某个字段

hexists key field

获取hash中存在的所有field或value

//获取field
hkeys key
//获取value
hvals key

设置指定field数值的指定值

//增加整数(传递负值可减少)
hincrby key field 数值
//增加小数
hincrbyfloat key field 数值

list类型

增加数据

//从左侧添加进入
lpush key value1 value2 ...
//从右侧添加进入
rpush key value1 value2...

获取数据

//以索引查询 start 0 stop -1 可查询所有
lrange key start stop
//以下标查询
lindex key index

获取集合长度

llen key

移除数据

//从左侧移除
lpop key
//从右侧移除
rpop key
//移除指定数据
lrem key count value

规定时间内获取并移除数据

//从左侧移除
blpop key1 [key2] timeout
//从右侧移除
brpop key1 [key2] timeout

set类型

添加数据

sadd key member1 [member2]

获取全部数据

smembers key

删除数据

srem key member1 [member2]

获取数据总量

scard key

判断集合中是否包含指定数据

sismember key member

随机获取集合中指定数量的数据

srandmember key [count]

随机获取数据并将该数据移除

spop key [count]

求两个集合的交、并、差集

//求交集
sinter key1 [key2]
//求并集
sunion key1 [key2]
//求差集
sdiff key1 [key2]

将两个集合的交、并、差集储存到指定集合

//交集
sinterstore 新的集合 key1 [key2]
//并集
sunionstore 新的集合 key1 [key2]
//差集
sdiffstore 新的集合 key1 [key2]

将指定数据从原始集合中移动到目标集合

smove 原始集合 目标集合 value

sorted_set类型

添加数据

zadd key score1 member1 [score2 member2]

获取数据

//由小到大 [withscores(将score展示出来)]
zrange key start stop [withscores]
//由大到小
zrevrange key start stop [withscores]

删除数据

zrem key member

按条件获取数据

//由小到大展示 limit指定展示数据的数量
zrangebyscore key min max [withscores] [limit]
//由大到小展示
zrevrangebyscore key max min [withscores]
 

根据条件删除

//按索引删除
zremrangebyrank key start stop
//按排序范围删除
zremrangeby key min max

获取数据的总量

//查询所有
zcard key
//查询范围内数据总量
zcount key min max

集合交、并操作

//可以进行运算 求和 最大值 最小值 可以 help zinterstore
zinterstore 新的集合 集合数量 key1 [key2 ...]

获取数据对应的索引(排名)

//由小到大
zrank key member
//由大到小
zrevrank key member

score值获取与修改

//获取
zscore key member
//修改
zincrby key 增加的数值 member

关于key的相关操作

删除指定key

del key

获取key是否存在

exists key

获取key的类型

type key

设置key的有效期

//设置秒
expire key seconds
//设置毫秒
pexpire key milliseconds
//使用时间戳
expireat key timestamp
pexpireat key milliseconds-timestamp

获取key的有效期

//如果一个key不存在 返回-2 存在返回-1 时效性返回剩余时间
ttl key
//剩余时间为毫秒
pttl key

切换key从时效性转换为永久性

persist key

查询有多少key

//查询所有
// * 代表所有 ?代表单个字符 []匹配一个指定字符
keys * 
//查询以name结尾的
keys ?ame
//查询可以和abc匹配的key
mset name nbme nacme
keys n[ab]me

为key改名

//修改重名的会把 原有的覆盖
rename key newkey
//如果新key不存在才会改名
renamenx key newkey

对所有key排序

//对list和set进行排序
sort

其他key通用操作

help @generic

数据库通用操作

  • redis为每个服务提供有16个数据库,编号从0到15
  • 每个数据库之间的数据相互独立

切换数据库

select index

其他操作

//打印日志
echo message
//查询服务器是否启动
ping
//推出
quit

数据移动

move key db

数据清除

//查询key的数量
dbsize
//删除当前库数据
flushdb
//删除所有库的数据
flushall

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值