2018-08-16Redis几种数据类型的基本操作

Nosql是非关系型数据库,内存级的读写,用来加快读写速度
当数据量增加,并且读取的人 增多,物理级的读写,等待时间太长,效率低
相当于一个缓存,有的话就从这里取,没有的再去MySQL取。


Nosql存储用法

Nosql类型的最大特点是以json的形式存储数据


Nosql数据库的分类

默认端口6379
绑定的ip可以打开 /etc/redis 里面的 redis.conf


redis.conf

默认用0那个数据库

1、string

  • string是redis最基本的类型,不仅是字符串类型,可以存多种数据
  • 最大能存储512MB数据
  • string类型是二进制安全的,即可以为任何数据,比如数字、图片、序列化对象等(相当于可以存任何能转化为二进制的数据)

命令

设置

  • 设置键值
set key value

  • 设置键值及过期时间(过了时间就删除),以秒为单位
SETEX key seconds value

  • 设置多个键值
MSET key value [key value ...]

获取

  • 根据键获取值,如果不存在此键则返回nil
GET key

  • 根据多个键获取多个值
MGET key [key ...]

运算

  • 要求:值是数字
  • 将key对应的value加1
INCR key

  • 将key对应的value加整数
INCRBY key increment

  • 将key对应的value减1
DECR key

  • 将key对应的value减整数
DECRBY key decrement

其它

  • 追加值
APPEND key value

  • 获取值长度
STRLEN key

2、hash

  • hash用于存储对象,对象的格式为键值对

命令

设置

  • 设置单个属性
HSET key field value

  • 设置多个属性
HMSET key field value [field value ...]

获取

  • 获取一个属性的值
HGET key field

  • 获取多个属性的值
HMGET key field [field ...]

  • 获取所有属性和值
HGETALL key

  • 获取所有的属性
HKEYS key

  • 返回包含属性的个数
HLEN key

  • 获取所有值
HVALS key

其它

  • 判断属性是否存在
HEXISTS key field

  • 删除属性及值
HDEL key field [field ...]

  • 返回值的字符串长度
HSTRLEN key field

3、list

  • 列表的元素类型为string
  • 按照插入顺序排序
  • 在列表的头部或者尾部添加元素

命令

设置

  • 在头部插入数据
LPUSH key value [value ...]

  • 在尾部插入数据
RPUSH key value [value ...]

  • 在一个元素的前|后插入新元素
LINSERT key BEFORE|AFTER pivot value

  • 设置指定索引的元素值
  • 索引是基于0的下标
  • 索引可以是负数,表示偏移量是从list尾部开始计数,如-1表示列表的最后一个元素
LSET key index value

获取

  • 移除并且返回 key 对应的 list 的第一个元素
LPOP key

  • 移除并返回存于 key 的 list 的最后一个元素
RPOP key

  • 返回存储在 key 的列表里指定范围内的元素
  • start 和 end 偏移量都是基于0的下标
  • 偏移量也可以是负数,表示偏移量是从list尾部开始计数,如-1表示列表的最后一个元素
LRANGE key start stop

其它

  • 裁剪列表,改为原集合的一个子集
  • start 和 end 偏移量都是基于0的下标
  • 偏移量也可以是负数,表示偏移量是从list尾部开始计数,如-1表示列表的最后一个元素
LTRIM key start stop

  • 返回存储在 key 里的list的长度
LLEN key

  • 返回列表里索引对应的元素
LINDEX key index

4、set

  • 无序集合
  • 元素为string类型
  • 元素具有唯一性,不重复

命令

设置

  • 添加元素
SADD key member [member ...]

获取

  • 返回key集合所有的元素
SMEMBERS key

  • 返回集合元素个数
SCARD key

其它

  • 求多个集合的交集
SINTER key [key ...]

  • 求某集合与其它集合的差集
SDIFF key [key ...]

  • 求多个集合的合集
SUNION key [key ...]

  • 判断元素是否在集合中
SISMEMBER key member

5、zset

  • sorted set,有序集合
  • 元素为string类型
  • 元素具有唯一性,不重复
  • 每个元素都会关联一个double类型的score,表示权重,通过权重将元素从小到大排序
  • 元素的score可以相同

命令

设置

  • 添加
ZADD key score member [score member ...]

获取

  • 返回指定范围内的元素
ZRANGE key start stop

  • 返回元素个数
ZCARD key

  • 返回有序集key中,score值在min和max之间的成员
ZCOUNT key min max

  • 返回有序集key中,成员member的score值
ZSCORE key member
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,810评论 19 139
  • 国家电网公司企业标准(Q/GDW)- 面向对象的用电信息数据交换协议 - 报批稿:20170802 前言: 排版 ...
    庭说阅读 13,909评论 6 13
  • 五一节后第一天。开了店长会。今天最大的收获就是把李可和李东鹏沟通到位了,他们不再和我顶撞了,交心了,气顺了,对别的...
    王翼wy阅读 1,076评论 0 0
  • 已有的事,後必再有。已行的事,後必再行。日光之下並無新事。 ...
    42ac2e6b99e0阅读 2,910评论 0 0
  • 努力从负债一族变为月光族
    二十如初阅读 1,468评论 0 0

友情链接更多精彩内容