Redis 常用命令汇总

自己看视频敲的,视频地址

 

基本操作

#进入redis
redis-cli
#选择数据库
select 0
#查看数据库里的数据数量
DBSIZE
#查询所有数据  一般服务器遍历都会禁止keys *命令,数据量过大使用keys *会导致服务器宕机
keys *
#清屏
clear

键值对

#设置值
set k1 1
#获取值
get k2
#key是否存在
exists key
#设置生命周期
expire k1 10
#查看生命剩余时间
ttl k1
#删除
del k1
#若存在,不覆盖的set key
setnx k1 bye
#查看值的类型
type k1
#遍历list
LRANGE mylist 0 -1
#计算长度
strlen k1
#加一/减一
INCR k3
DECR k3
#加N/减N
INCRBY k3 3
DECRBY k3 3
#截取获取字符串
GETRANGE k1 0 -1
GETRANGE k1 0 3
#设置值
SETRANGE k1 0 hel
#setex(set with expire)键秒值/setnx(set if not exist)
setex k6 10 20

List

#List 单键多值 底层实际上是一个双向链表,对两端的操作性能很高,通过索引下标操作中间的节点性能很差
#list lpush/rpush/lrange
#查看list元素
LRANGE mylist 0 -1
#从左边添加元素
lpush mylist 2 3 4 5
lpushx mylist 6 7(若存在mylist则执行操作,否则不执行)
#从右边添加元素
rpush mylist 0 1
rpushx mylist 6 7(若存在mylist则执行操作,否则不执行)
#从左边/右边吐出一个值
lpop mylist
rpop mylist
#获取列表长度
llen mylist

#list是可重复的,此操作会在找到的第一个元素上进行操作,只操作一次
#在mylist中的10元素后面插入11
linsert mylist before 10 11
#在mylist中的10元素后面插入11
linsert mylist after10 9

#删除list中的元素
#若n是正数代表从左边往右边找,删除元素;
#若n是负数代表从右边往左边找,删除元素;
#若n=0,表示删除list中的所有value。
#lrem <key> <n> <value>
#从左边删除2个10
lrem mylist 2 10
#从右边删除2个10
lrem mylist -2 10

Set

#Set是string类型的无序集合 底层实际上是一个value为null的hash表,所以添加,删除,查找的复杂度都是O(1)
#添加一个set [ a, b, c, d, e, 1, 2, 3]
sadd myset a b c d e 1 2 3
#查看set中的所有值
SMEMBERS myset
#判断集合中是否含有元素1
SISMEMBER myset 1
#判断set元素个数
scard myset
#删除set中的元素1和a
srem myset 1 a
#随机从集合中吐出一个数(会删除吐出的数)
spop myset
#随机从集合中取出2个数(不会删除取出的数)
SRANDMEMBER myset 2

集合一:myset1:sadd myset1 a b c d e 1 2 3
集合二:myset2:sadd myset2  1 2 3 4 5 6
#返回两个集合的交集元素
sinter myset1 myset2
#返回两个集合的并集元素(会去重)
sunion myset1 myset2
#返回两个集合的差集元素
sdiff myset1 myset2

hash

#Redis hash 是一个键值对集合,是一个string类型的field和value的映射表
#创建一个hset
#hset <key> <field> <value>
hset device id 1
#获取device的id
hget device id
#批量设置hash的值
#hmset <key> <field1> <value1> <field2> <value2>...
hmset device name device price 10
#查看哈希表device中的field是否存在
hexists device name
#列出hash表device中的所有属性和值
hgetall device
#列出该hash集合中的所有field
hkeys device
#列出该hash集合中的所有value
hvals device
#为hash表device中的price加上增量1
hincrby device price 1
#为hash表device中的price设置为15(当price属性存在时,此操作不生效,若不存在时,才生效,相当于是新增field)
hsetnx device price 15
 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值