#Redis入门(附下载链接) #Redis5种类型的基本操作@FDDLC

it2023-02-12  45

一、Redis简介

1、是一种NoSQL(Not only SQL)数据库,即非关系型数据库。

2、存储键值对。

3、Windows版本下载链接:Redis Windows版

 

二、Redis可视化工具

自带的 redis-cli.exe 只有一个黑漆漆的命令窗口,有时候感觉不是很方便。

献上一个Redis可视化管理工具:Redis Desktop Manager,是【个人开发者】编写的,最新版的要收费!

下载链接:Redis Desktop Manager

 

三、Redis常用命令

Redis支持5种常用类型:字符串String、哈希Hash(即Map)、列表List(可重复)、集合Set(不可重复)、有序集合Sorted Set(不可重复、有序)。

 

下面的命令都是在redis-cli.exe中执行的!

 

1、字符串String

1.1、存储/覆盖:set 键名 键值

存储(Redis中尚无该key)示例:set name Tom

覆盖(Redis中已有该key)示例:set name Jack

 

1.2、取值:get 键名

示例:get name

 

1.3、删除:del 键名

示例:del name

 

2、哈希Hash(即Map)

2.1、存储(Map中只有一个键值对):hset Redis中的键名(即Map名) Map中的键名 Map中的键值

示例:hset grades math 100

 

2.2、存储(Map中有多个键值对):hmset 【Redis中的键名(即Map名)】 【Map中的键名1】 【Map中的键值1】 【Map中的键名2】 【Map中的键值2】 …

示例: hmset family dad Tom mom Mary  (注:hmset中的h指Hash,m指Multi)

 

2.3、获取Redis键名对应的Map中某个key的值:hget 【Redis键名(即Map名)】 【Map中的某个key】

示例:hget family dad

 

2.4、获取Redis键名对应的Map中的全部键值对:hgetall 【Redis中的键名】

示例:hgetall family

 

2.5、删除Redis键名对应的Map中的一个或多个键值对:hdel 【Redis中的键名(即Map名)】 【Map中的键名1】 【Map中的键名2】 …

示例:hdel family dad

 

3、列表List(可重复)

3.1、往列表右端添加一个或多个元素:rpush    键名(即List的名字)    元素1    元素2 …    (注:rpush中的r指right)

示例:rpush TopRich WangJianlin WangWei

 

3.2、往列表左端添加一个或多个元素:lpush    键名(即List的名字)    元素1    元素2  …    (注:lpush中的l指left)

示例:lpush TopRich MaHuateng MaYun

 

3.3、获取某个范围内的元素:lrange    键名(即List的名字)     起始元素的索引(含)    终止元素的索引(含)    (注:第一个的索引为0,最后一个的索引可用-1表示;有lrange,但没有rrange)

示例:lrange TopRich 0 1

示例(获取列表中的所有元素):lrange TopRich 0 -1    (这里等价于:lrange TopRich 0 n,n可以为3、4、5……)

根据这个结果,我们可以总结出前面使用lpush和rpush时元素的添加顺序:lpush是越早添加的越靠右,rpush是越早添加的越靠左!

 

3.4、删除列表中最左端的元素并将其返回给用户:lpop    键名(即List的名字)

示例:lpop TopRich

3.5、删除列表中最右端的元素并将其返回给用户:rpop    键名(即List的名字)

示例:rpop TopRich

 

4、集合Set(不可重复)

4.1、往集合中添加一个或多个元素:sadd    键名(即集合的名字)    元素1    元素2 …    (注:sadd中的s指set,集合)

示例:sadd countries China America Canada Britain

 

4.2、获取集合中的所有元素:smembers    键名(即集合的名字)

示例:smembers countries

 

4.3、删除集合中的一个或多个元素:srem    键名(即集合的名字)    元素1    元素2 …    (注:srem中的s指set,rem指remove)

示例:srem countries America Britain

 

5、有序集合Sorted Set(不可重复、有序)

5.1、往有序集合中 添加/覆盖 一个或多个元素:zadd    键名(即有序集合的名字)    元素1的权重    元素1    元素2的权重    元素2 …

说明:权重是排序的依据,需要指定;按权重从小到大排名;权重为float类型。

添加示例:zadd ranking 2000 WangJianlin 1800 WangWei 1500 MaYun 1400 MaHuateng

在Redis Desktop Manager中可以看到:

覆盖示例:zadd ranking 2500 MaYun 1900 ZhongShanshan

在Redis Desktop Manager中可以看到:

 

5.2、从有序集合中获取某个范围里的元素:zrange    键名(即有序集合的名字)    起始元素的索引(含)    终止元素的索引(含)    (注:第一个的索引为0,最后一个的索引可用-1表示;和List类似)

示例:zrange ranking 0 1

示例:zrange ranking 0 -1    (注:这里相当于:zrange ranking    0    n,n可以为4、5、6……)

示例(显示权重):zrange ranking 0 0 withscores

 

5.3、从有序集合中删除一个或多个元素:zrem    键名(即有序集合的名字)    元素1    元素2 …

示例:zrem ranking WangJianlin WangWei

在Redis Desktop Manager中可以看到:

 

最新回复(0)