Redis进阶学习

本文详细介绍了Redis中的基本数据结构,包括Redis命令的使用,字符串(String)操作,哈希(Hash)的存储方式,列表(List)的插入与读取,集合(Set)的增删查,以及有序集合(Sorted Set)的排序功能。通过实例展示了如何在Redis中操作这些数据结构,便于理解和应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. Redis命令

Redis 客户端的基本语法为:

redis-cli

如果输入值为中文则使用

redis-cli --raw

如果需要在远程 redis 服务上执行命令,同样我们使用的也是 redis-cli 命令。

以下实例演示了如何连接到主机为 127.0.0.1,端口为 6379 ,密码为 mypass 的 redis 服务上。

redis-cli -h 127.0.0.1 -p 6379 -a "mypass"

2. Redis字符串(String)

实例:

redis 127.0.0.1:6379> SET china redis
OK
redis 127.0.0.1:6379> GET china
"redis"

3.Redis哈希(Hash)

Redis hash 是一个 string 类型的 field(字段) 和 value(值) 的映射表,hash 特别适合用于存储对象。
实例:

127.0.0.1:6379>  HMSET chinaKey name "redis tutorial" description "redis basic commands for caching" likes 20 visitors 23000
OK
127.0.0.1:6379>  HGETALL chinaKey //hget chinaKey xxx 用来获取某一字段
1) "name"
2) "redis tutorial"
3) "description"
4) "redis basic commands for caching"
5) "likes"
6) "20"
7) "visitors"
8) "23000"

在以上实例中,我们设置了 redis 的一些描述信息(name, description, likes, visitors) 到哈希表的 chinaKey 中。

4. Redis 列表(List)

实例:

redis 127.0.0.1:6379> LPUSH china redis
(integer) 1
redis 127.0.0.1:6379> LPUSH china mongodb
(integer) 2
redis 127.0.0.1:6379> LPUSH china mysql
(integer) 3
redis 127.0.0.1:6379> LRANGE china 0 10

1) "mysql"
2) "mongodb"
3) "redis"

5. Redis 集合(Set)

实例:

redis 127.0.0.1:6379> SADD china redis
(integer) 1
redis 127.0.0.1:6379> SADD chian mongodb
(integer) 1
redis 127.0.0.1:6379> SADD china mysql
(integer) 1
redis 127.0.0.1:6379> SADD china mysql
(integer) 0
redis 127.0.0.1:6379> SMEMBERS china

1) "mysql"
2) "mongodb"
3) "redis"

6. Redis 有序集合(sorted set)

Redis 有序集合和集合一样也是 string 类型元素的集合,且不允许重复的成员。

不同的是每个元素都会关联一个 double 类型的分数。redis 正是通过分数来为集合中的成员进行从小到大的排序。

有序集合的成员是唯一的,但分数(score)却可以重复。

集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是 O(1)。 集合中最大的成员数为 232 - 1 (4294967295, 每个集合可存储40多亿个成员)。
实例:

redis 127.0.0.1:6379> ZADD china 1 redis
(integer) 1
redis 127.0.0.1:6379> ZADD china 2 mongodb
(integer) 1
redis 127.0.0.1:6379> ZADD china 3 mysql
(integer) 1
redis 127.0.0.1:6379> ZADD china 3 mysql
(integer) 0
redis 127.0.0.1:6379> ZADD china 4 mysql
(integer) 0
redis 127.0.0.1:6379> ZRANGE china 0 10 WITHSCORES

1) "redis"
2) "1"
3) "mongodb"
4) "2"
5) "mysql"
6) "4"
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值