博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
redis数据库二:数据类型
阅读量:3977 次
发布时间:2019-05-24

本文共 1714 字,大约阅读时间需要 5 分钟。

redis数据库二:redis的数据结构

文章目录


一、redis的数据结构

redis存储的都是:key,value格式的数据,其中key都是字符串,value有5种不同的数据结构:

  1)字符串类型 string
  2) 哈希类型 hash : map格式
  3) 列表类型 list : linkedlist格式。支持重复元素
  4) 集合类型 set : 不允许重复元素
  5) 有序集合类型 sortedset:不允许重复元素,且元素有顺序


二、redis数据结构的操作

2.1 字符串类型:String

上一篇说了如何启动redis,在启动redis后,我们需要打开客户端进行操作,

在这里插入图片描述
String类型是包含很多种类型的特殊类型,并且是二进制安全的。比如序列化的对象进行储存,比如一张图片进行二进制储存,比如一个简单的字符串数值等等。

1.存储:set key value,其中key是username,value是张三。

在这里插入图片描述
2.获取:get key,想要获取值,是通过键key来获取的,如下:
在这里插入图片描述
3. 删除:del key
在这里插入图片描述

2.2 哈希类型:hash

Hash类型是String类型的filed和value的映射表,或者说是一个String的结合,他特别适合存储对象。相比较而言把一个对象存储在Hash类型中要比直接存储在String中更加节省空间。并方便存储整个对象,Hash类型也是我们工作中最常用的一种。

1.存储:hset key field value,意思是将哈希表 key 中的字段 field 的值设为 value ,比如下图第一句是将哈希表myhash中的usename字段的值设为lisi。

在这里插入图片描述
2.获取:
  1)hget key field: 获取指定的field对应的值。
  2)hgetall key:获取所有的field和value
在这里插入图片描述
3.删除:hdel key field
在这里插入图片描述

2.3 列表类型 :list

可以添加一个元素到列表的头部(左边)或者尾部(右边)。

1.添加

  1)lpush key value: 将元素加入列表左表
  2)rpush key value:将元素加入列表右边

下面通过这个图来说明lpush和rpush,首先 创建的list列表两边是开的,当lpush元素a,从列表左边存入list,再lpushi元素b,把a往列表里面挤一位,存入b;rpush的操作相反,是从list列表右边进行,如图rpush元素c.

在这里插入图片描述
下面来进行存储操作:
在这里插入图片描述
2.获取: lrange key start end :LRANGE key start stop 获取列表指定范围内的元素
在这里插入图片描述
3.删除
  1)lpop key:删除列表最左边的元素,并将元素返回
  2)rpop key:删除列表最右边的元素,并将元素返回
在这里插入图片描述
在这里插入图片描述

2.4 集合类型:set

无序集合,不允许重复。

1.存储:sadd key member1

在这里插入图片描述
2.获取:smembers key: 获取set集合中所有元素
在这里插入图片描述
3. 删除:srem key value:删除set集合中的某个元素
在这里插入图片描述

2.5 有序集合类型:sorted set

不允许重复元素,且元素有顺序.每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。

1.存储:zadd key score1 member1 [ score2 member2]

a
2.获取:zrange key start end [withscores]
在这里插入图片描述
3.删除:zrem key value
在这里插入图片描述

下面在介绍几个通用的命令:

  1)keys * : 查询所有的键
  2)获取键对应的value的类型
  3)删除指定的key value
在这里插入图片描述

总结

  关于redis的数据结构部分就介绍这么多啦,其实每种数据结构还有很多命令和操作方式,这里入个门就ok啦,有兴趣的小伙伴可以去redis中文官网去看看,里面有很多其它的内容哦。如果本篇内容能让你学到点东西的话,点个赞哈,另外如有错误之处欢迎留言指正。

下一篇将介绍redis数据库的持久化。

转载地址:http://gagki.baihongyu.com/

你可能感兴趣的文章
第一个Java程序
查看>>
conda创建python环境
查看>>
pytorch学习入门:什么是pytorch+安装
查看>>
机器学习中ground truth的解释
查看>>
使用朴素贝叶斯进行分本分类
查看>>
Python读写文件的方式
查看>>
K-近邻算法改进约会网站的配对效果
查看>>
快速排序算法及其优化方法
查看>>
VC++ string .........
查看>>
RoboCup2d 环境配置
查看>>
[转载]int,int32_t,int64_t
查看>>
LINUX 下 GDB 调试 ( 转载 )
查看>>
GDB 、 LINUX 下 GDB 调试 小结---->基础知识!
查看>>
Linux下静态库和动态库的创建和使用( 转载 )
查看>>
makefile:中文版最权威的makefile文档( 转载 )
查看>>
linux 编译警告:检测到时钟错误。您的创建可能是不完整的。
查看>>
Linux目录结构(Linux文件系统结构)( 转载 )
查看>>
ubuntu 必要软件 ( 转载 )
查看>>
linux sed 流编辑器的一些应用实例
查看>>
sed 流编辑器的特殊应用( 转载 )
查看>>