Redis数据库常用操作命令

Redis 是类似于 Map 类型的 K-V 键值对形式的存储方式

String字符串

类似 Java 中的 String 类型。

-- ****************String字符串**************
-- 设置一个key
set str 12344
-- 设置多个值
mset one 你好,999,$$$
mset one 你好 999 $$$
-- 创建一个key:返回旧的值
getset huahai 1999-- 自增
set first 1
incr first
-- 设置自增的增量
incrby first 3
-- 自减
decr first
-- 设置自减的增量
decrby first 4
-- 设置自减的增量
-- 查询
get one
get 999
mget one 999
-- 修改
append 999 你是我的眼
-- 删除
-- 设置key的存活时间
expire first -2
get first
set test01 1
get test01
-- 删除key
del test01
-- 返回字符串的长度
strlen one
strlen 999
-- 截取并返回字符串
getrange 999 0 3

List列表

类似 Java 中的 List 集合,值可以重复,不会自动排序。

-- ****************List列表**************
-- 添加数据
lpush list1 1 2 3 4 5 6 7 8 9 10
rpush list1 21 34 67
-- 在列表的指定元素前或者后插入新元素
linsert list1 before 10 90
linsert list1 after 10 2900
-- 查询
-- 查看所有的值
lrange list1 0 -1
-- 获取索引的位置的值
lindex list1 5
-- 获取列表的长度
llen list1
-- 删除
-- 移除并获取列表的第一个元素
lpop list1
-- 移除并获取列表的最后一个元素
rpop list1
-- 移除列表n个数指定的元素
rpush list2 1 2 3 1 2 3 1 2 3 1 2 3 4
lrange list2 0 -1
lrem list2 3 1
-- 对列表进行修剪,让列表只保留指定索引内的元素
llen list2
ltrim list2 2 4
-- 修改
lset list1 0 900

Set集合

类似于 Java 中的 TreeSet,默认按照字典顺序排序,升序,元素不可重复。字典排序对于基础的数 据可以实现,复杂类的数据排序可能会有问题。

​ Redis的Set是string类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数 据。

​ Redis 中 集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是O(1)。

​ 集合中最大的成员数为 2^32 - 1 (4294967295, 每个集合可存储40多亿个成员)。

-- ****************Set集合**************
-- 添加数据
sadd firstset 1 33 44 555 6676 667
sadd firstset 33
-- 修改
-- set集合没有顺序,所以不能修改
-- 删除
-- 随机删除n个数据
-- 注意:下面的删除数据的个数不用加上()
spop firstset 3
-- 查看数据
scard firstset
-- 查看所有的key和value
smembers firstset
-- 返回集合中一个或者多个随机值
srandmember firstset 1

ZSet有序集合

-- ****************ZSet有序集合**************
-- 增
zadd zsetfirst 500 huahai
-- 添加多个值
zadd zsetsecond 300 zhoujielun 400 caiyilin
zadd zsetsecond 300 dapeng 400 nanjing
-- 删除
zrem zsetfirst huahai
-- 修改
-- 向上修改
zincrby zsetsecond 20 zhoujielun
-- 向下修改
zincrby zsetsecond -20 zhoujielun
-- 查看数据
-- 分数从低到高
zrange zsetsecond 1 2
-- 分数从高到第低
zrevrange zsetsecond 0 3
-- 通过分数返回,不带分数
zrangebyscore zsetsecond 200 300
-- 通过分数返回,不带分数带分数
zrangebyscore zsetsecond 200 300 withscores
-- 获取集合中的成员个数
zcard zsetsecond
-- 通过限定的区间限定成员个数
zcount zsetsecond 200 300

Hash哈希

-- ****************Hash 哈希**************
-- 添加
hset hashFirst city 郑州
hset hashFirst city1 南京
hset hashFirst city2 上海
hset hashFirst city3 北京
hset hashFirst city4 广州
hset hashFirst city5 深圳
-- 修改
hset hashFirst city 青岛
hmset hashFirst city1 苏州 city2 厦门
-- 给指定的属性值设置自增量
-- hincrby hashFirst city 20
-- 删除
hdel hashFirst city2 city4
-- 查询
hgetall hashFirst
-- 获取指定属性的值
hget hashFirst city
hget hashFirst city1
-- 获取指定key中n个属性的值
hmget hashFirst city2 city3

通用key操作

-- ****************通用key操作**************
-- 删
del 999
flushdb
-- 清空当前所有库的key
-- flushall
-- 改
-- 设置key的存活时间
expire one 3
-- 将当前的key移动到其他的库
move str 1
-- 查
-- 返回1表示存在
exists 花海
-- 返回0表示存在
exists 花海1
-- 查询key的存活时间
-- -1代表永久
ttl 花海
-- -2代表不存在
ttl 花海1
expire 花海 10
type huahai
keys *
keys *1
keys *1*
keys 1*
-- 查看当前库的所有key的总数量
dbsize
-- 切换指定库
select 1
  • 7
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值