day52-Redis

Redis

1.Redis

1.1  RESP连接Redis

day52-Redis_第1张图片

1.2  定义:是一个高性能的key-value数据库(非关系型数据库)

1.3  数据类型:

key键的类型是字符串类型;

值的类型有五种:字符串String,哈希hash,列表list,无序集合set,有序集合zset

1.4  核心特点:新版Redis是多线程的,Redis单线程性能很高(一般单线程性能低,Redis特例)

2.String类型

(1)最常用的类型,可以存储String,Integer等数据, 甚至是二进制数据,一个字符串最大容量是512M

(2)set命令:key不存在即为添加操作,存在即为修改操作;TTL:-1è为永久存在

day52-Redis_第2张图片

day52-Redis_第3张图片 day52-Redis_第4张图片

(3)设置过期时间:setex

day52-Redis_第5张图片

(4)设置多个键值对:mset

 day52-Redis_第6张图片

(5)追加值:append

 day52-Redis_第7张图片

(6)查询值:单个查询get,多个查询mget

day52-Redis_第8张图片

(7)del命令:删除单个或多个键

day52-Redis_第9张图片

(8)keys命令:查询所有的key

day52-Redis_第10张图片

(9)exists命令:判断键是否存在,1存在,0不存在

day52-Redis_第11张图片

(10)type命令:查看键对应的value的类型

(11)expire命令:设置键过期时间

(12)TTL命令:查看键有效时间(-1永久,-2不存在)

 day52-Redis_第12张图片

3.List类型

链表结构

往左侧添加值:lupsh;                                                                 往右侧添加值:rpush;

day52-Redis_第13张图片                          

day52-Redis_第14张图片   day52-Redis_第15张图片

获取值:lrange:从左侧开始,第一个值索引为0;索引可以是负数,表示从尾部开始计数

lrange key start stop(0 -1代表获取全部)

day52-Redis_第16张图片        day52-Redis_第17张图片

修改命令:lset key 索引 替换的值

day52-Redis_第18张图片

删除命令:将列表中前count次出现的值移除

count<0:从头往后删除;count>0:从尾往头删;count=0:删除所有的值

day52-Redis_第19张图片

4.Set类型

特点:字符串类型,无序且不可重复

(1)添加

day52-Redis_第20张图片

(2)smembers:获取集合中所有元素

day52-Redis_第21张图片

(3)sismember:判断元素是否在集合中

day52-Redis_第22张图片

(4)srem:删除元素

day52-Redis_第23张图片

(5)scard:获取集合中元素的个数

(6)spop:弹出元素(随机删除count个值)

day52-Redis_第24张图片

(7)smove:移动元素

day52-Redis_第25张图片

5.Hash哈希类型

特点:key值对应的value中包含一对键值对(类似Map>)

(1)添加单个和多个值HSET和HMSET

(2)查询:HGETALL查询内部所有的键值对

day52-Redis_第26张图片

(3)HGET :获取value中单个key对应的值;HMGET ;获取value中多个key对应的值

day52-Redis_第27张图片

(4)HDEL:通过value中的某个key删除某个键值对

day52-Redis_第28张图片

6.zset类型(有序集合)

特点:存放数据有序且不可重复,独立且根据score来排序

(1)添加:ZADD  key  score value

   day52-Redis_第29张图片

(2)ZRANGE...withscores:获取索引区间内的value

day52-Redis_第30张图片

(3)ZRANGEBYSCORE:获取score分数区间的value

day52-Redis_第31张图片

(4)ZREM:删除元素

(5)ZCARD:获取集合中元素个数

你可能感兴趣的:(redis,数据库,缓存)