Redis五种类型及常用命令

连接redis服务器

#连接本地
./redis-cli -p 6379
#连接远程服务器
./redis-cli -h 127.0.0.1 -p 6379
# 密码登录
./redis-cli -h 127.0.0.1 -p 6379 -a 123132

相关命令

#切换到6号数据库
127.0.0.1:6379> select 7 
#获取所有key
keys * 
#设置key的过期时间(10秒)
EXPIRE k2 10 
# 获取key为a的失效时间(-1永不过期,-2已经过期)
ttl a
# 清空当前数据库
flushdb
#清空所有库
FLUSHALL
#判断key是否存在
EXISTS k1
#判断key的类型
type k1

字符串

#设置 key为a value 为123
set a 123
# 删除 k2
del k2
#10秒后过期
set a 123 ex 10
# 获取a的value
get a
# 如果a存在,则插入返回1 ,否则不插入返回0
setnx a 123
# 批量设置 设置key为a 、b
mset a 123 b 234
# 自增 +1
incr a
# 自减-1
decr a
# 加 2
incrby a 2
# 减2
decrby a
# 针对浮点数+ 1.1
incrbyfloat c 1.1

# 字符创
# 在value 后追加 tt
append a tt
# 获取字符串长度
strlen a
#截取2-4位字符串
getrange a 2 4

hash相关

Hash是一个键值(key-value)的集合。redis的hash是一个string的key和value的映射表,Hash特别适合存储对象

#设置 key为user:01 值为 name 和sex
hmest user:01 name a sex b
#获取user:01的value
hgetall user:01
#获取user:01的name
hget user:01 name
#删掉user:01的name属性
hdel user:01 name
#判断user:01的 sex属性是否存在,存在为1
HEXISTS user:01 sex
#获取 user:01的所有属性
HKEYS user:01
# 将 age的值+1(跟字符串类似)
 hincrby user:01 age 1

List相关

存储多个有序的字符串。比如twitter的关注列表,粉丝列表都可以用list结构来实现

#从右侧插入key为a, 值分别为 c b a
rpush a c b a
#从左侧插入
lpush a c b a
# 列出a列表中所有的值
lrange a 0 -1
# 列出a列表中从0 到1 的值
lrange a 0 1
# 返回 a列表的长度
llen a
# 删掉左侧第一个数
lpop a
# 删掉右侧第一个值
rpop a

Set相关

不允许有重复值,并且无序。可以用在计算共同兴趣或者标签等

#添加user集合, 值为 a b c 
sadd user a b c
# 判断 user集合是否存在
exists user
# 获取 user集合中所有元素
smembers user
# 删除user集合中的a值
srem user a
# 返回集合个数
scard user
# 计算出两个集合的交集
sinter user1 user2

Zset 相关

有序集合,不允许有重复值。可以用在排行榜、点赞数等

#给集合user 添加 a分数为200 b分数为100
zadd user 200 a 100 b
#根据分数从低到高
zrange user 0 -1 withscores
#添加新的元素到集合
zadd user nx 1 aa
#修改 aa的分数 +1
zadd user incr 1 aa
或者
zincrby user 1 aa
#修改 aa的分数 -11
zadd user incr -11 aa
#元素个数
zcard user
#将aa删除
zrem user aa
#获取 b的分数
zscore user b
#获取b的排名
zrank user b
# 删掉user集合中0 -1的元素
ZREMRANGEBYRANK user 0 1

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值