红酒网站模板下载,网络运营者不得违反法律,网站托管共享服务器费用一年多少钱,站长之家查询的网址上一篇文章我们讲了Redis的10大应用场景#xff0c;这一篇文章就针对Redis的常用数据结构进行一个说明#xff0c;通过示例的形式演示每一种数据结构如何使用。 当涉及Redis的数据操作时#xff0c;不同数据类型对应的不同数据结构#xff0c;如下就对5大常用的数据类型进行…上一篇文章我们讲了Redis的10大应用场景这一篇文章就针对Redis的常用数据结构进行一个说明通过示例的形式演示每一种数据结构如何使用。 当涉及Redis的数据操作时不同数据类型对应的不同数据结构如下就对5大常用的数据类型进行演示。
1、字符串String SET key value适用于设置单个值比如设置用户的姓名或者用户的年龄等。 SET username JohnGET key适用于获取单个值比如获取用户的姓名或者用户的年龄等。 GET usernameDEL key适用于删除单个键值对比如删除用户的姓名或者用户的年龄等。 DEL username2、哈希Hash HSET key field value适用于存储对象的属性比如存储用户对象的各个属性。 HSET user:id:1001 name JohnHGET key field适用于获取对象的指定属性比如获取用户对象的姓名属性。 HGET user:id:1001 nameHDEL key field1 field2 ...适用于删除对象的指定属性比如删除用户对象的姓名属性。 HDEL user:id:1001 name3、列表List
3.1、创建列表
可以使用LPUSH、RPUSH等命令向列表的头部或尾部添加元素从而创建一个新的列表。
LPUSH mylist value1 value2 value3 # 向列表头部添加元素
RPUSH mylist value4 value5 value6 # 向列表尾部添加元素3.2、获取列表元素
通过LRANGE命令可以获取列表指定范围内的元素其中0表示列表的第一个元素-1表示列表的最后一个元素。
LRANGE mylist 0 -1 # 获取列表中所有元素
LRANGE mylist 0 2 # 获取列表中前三个元素3.3、弹出列表元素
通过LPOP和RPOP命令可以从列表头部或尾部弹出一个元素并返回弹出的元素。
LPOP mylist # 从列表头部弹出一个元素
RPOP mylist # 从列表尾部弹出一个元素3.4、获取列表长度
通过LLEN命令可以获取列表的长度即列表中元素的个数。
LLEN mylist # 获取列表的长度3.5、示例
假设我们有一个任务队列需要将任务按顺序添加到队列中并且按照顺序处理。
LPUSH task_queue task1 # 添加任务1到任务队列头部
LPUSH task_queue task2 # 添加任务2到任务队列头部
LPUSH task_queue task3 # 添加任务3到任务队列头部LRANGE task_queue 0 -1 # 获取任务队列中的所有任务RPOP task_queue # 从任务队列尾部弹出一个任务表示任务被处理4、集合Set
4.1、创建集合
在Redis中可以使用SADD命令向集合中添加元素从而创建一个新的集合。
SADD myset member1 member2 member3 # 向集合中添加多个成员4.2、获取集合成员
通过SMEMBERS命令可以获取集合中的所有成员。
SMEMBERS myset # 获取集合中所有成员4.3、判断成员是否存在
通过SISMEMBER命令可以判断指定成员是否存在于集合中。
SISMEMBER myset member1 # 判断成员1是否存在于集合中4.4、移除集合成员
通过SREM命令可以从集合中移除一个或多个成员。
SREM myset member1 member2 # 从集合中移除成员1和成员24.5、获取集合基数
通过SCARD命令可以获取集合的基数即集合中成员的数量。
SCARD myset # 获取集合的基数4.6、获取集合交集
通过SINTER命令可以获取多个集合的交集。
SADD set1 a b c # 集合1包含元素a、b、c
SADD set2 b c d # 集合2包含元素b、c、dSINTER set1 set2 # 获取集合1和集合2的交集4.7、示例
假设我们有一个社交网络应用需要存储用户的好友列表并且要求好友列表中不能有重复的用户。
SADD user:1001:friends user:1002 # 用户1001的好友列表中添加用户1002
SADD user:1001:friends user:1003 # 用户1001的好友列表中添加用户1003
SADD user:1001:friends user:1004 # 用户1001的好友列表中添加用户1004SMEMBERS user:1001:friends # 获取用户1001的好友列表中的所有好友5、有序集合Sorted Set
5.1、创建有序集合
可以使用ZADD命令向有序集合中添加成员同时为每个成员指定一个分数从而创建一个新的有序集合。
ZADD mysortedset 1 member1 # 向有序集合中添加成员1并设置其分数为1
ZADD mysortedset 2 member2 # 向有序集合中添加成员2并设置其分数为2
ZADD mysortedset 3 member3 # 向有序集合中添加成员3并设置其分数为35.2、获取有序集合成员
通过ZRANGE命令可以按照分数从小到大的顺序获取有序集合中指定范围内的成员。
ZRANGE mysortedset 0 -1 WITHSCORES # 获取有序集合中所有成员及其分数
ZRANGE mysortedset 0 2 WITHSCORES # 获取有序集合中前三个成员及其分数5.3、获取有序集合成员分数
通过ZSCORE命令可以获取有序集合中指定成员的分数。
ZSCORE mysortedset member1 # 获取成员1在有序集合中的分数5.4、移除有序集合成员
通过ZREM命令可以从有序集合中移除一个或多个成员。
ZREM mysortedset member1 member2 # 从有序集合中移除成员1和成员25.5、获取有序集合基数
通过ZCARD命令可以获取有序集合的基数即有序集合中成员的数量。
ZCARD mysortedset # 获取有序集合的基数5.6、示例
假设我们有一个学生成绩单需要存储学生的成绩并按照成绩从高到低进行排名。
ZADD student_scores 90 alice # 学生Alice的成绩为90
ZADD student_scores 85 bob # 学生Bob的成绩为85
ZADD student_scores 95 charlie # 学生Charlie的成绩为95ZRANGE student_scores 0 -1 WITHSCORES # 获取学生成绩单中所有学生及其成绩感觉整理的可以《醉鱼Java》你懂的