Redis

本文介绍了Redis的基本使用,包括数据库切换、清空操作及键值查询。深入讲解了Redis的五大数据类型:String、Hash、List、Set,以及它们的创建、读取、更新和删除操作。例如,String类型的setex命令可以设置键的过期时间,Hash适用于存储对象,List支持双向添加元素,Set则提供了无序且不重复的字符串集合。此外,还探讨了Set的sadd和sismember等操作。
摘要由CSDN通过智能技术生成

1.Redis的基本使用
说明:Redis安装好后,默认有16个数据库,初始默认使用0号库,编号是0…15
1)添加key-val [set]
2)查看当前redis的所有key [keys *]
3)获取key对应的值 [get key]
4)如何查看当前数据库的key-val数量 [dasize]
5)切换redis数据库 [select index]
6)清空当前数据库的key-value和清空所有数据库的key-val [flushdb flushall]
在这里插入图片描述
2.Redis数据类型和CRUD
Redis的五大数据类型:String(字符串)、Hash(哈希)、List(列表)、Set(集合)和zset(sorted set:有序集合)
一、字符串
1)String(字符串)-介绍
string是redis最基本的类型,一个key对应一个value
str1 := “hello”
str2 := “张三”
string 类型是二进制安全的,除普通的字符串外,也可以存放图片等数据。
redis中字符串value最大是512M
2)String(字符串)-CRUD
set(如果存在相当于修改,不存在就是添加)/get/del
3)String(字符串)-使用细节和注意事项
setex(set with expire)键秒值
SETEX key seconds value
将值value关联到key,并将key的生存时间设为seconds(以秒为单位),如果key已经存在,SETEX命令将复写旧值。
4)mset [同时设置一个或者多个key-value 对]
MSET key value [key value …]
同时设置一个或者多个key-value对
如果某个给定key已经存在,那么 MSET 会用新值覆盖原来的旧值
5)mget [一次返回多个key的值]
MGET key [key…]
返回所有(一个或者多个)给定key的值
如果给定的key里面,有某个key不存在,那么这个可以返回特殊值nil。
二、Hash(哈希,类似golang里面的Map)
1)Redis hash是一个键值对集合,var user1 map[string]string
Redis hash是一个string类型的field和value的映射表,hash特别适合用于存储对象。
举例:存放一个User信息:
user1 name Smith age 30 job “golang coder”
说明:
key:user1
name张三和age 30 就是两对 field-value
单个写:hset user1 name smith
hset user1 age 30
hset user1 job “golang coder”
hget user1 name / / 获取
hgetall //获取所有
hdel
2)使用细节和注意事项
在给user设置name和age 时,前面我们是一步一步设置,使用hmset 和 hmget可以一次性来设置多个field的值和返回多个field的值
hlen 统计一个hash有几个元素
hexists key field
查看哈希表key中,给定域field是否存在
三、List(列表)
1)列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边)或者尾部(右边)。
List本质是个链表,List的元素是有序的,元素的值可以重复。
例子:存放多个地址信息
lpush city beijing shanghai tianjin
存储顺序(从左到右)天津 上海 北京
lrange city 0 1
2)List(列表)-CRUD
lpush/rpush/lrange/lpop/rpop/del/
lpop:将数据(左边)移出
rpop:将数据(右边)移出
LRANGE key start stop:返回列表key中指定区间内的元素,区间以偏移量start和stop指定。下标(index)参数start和stop都以0为底,也就是说,以0表示列表的第一个元素,以1表示列表的第二个元素,以此类推。你也可以使用负数下标,以-1表示列表的最后一个元素,-2表示列表的倒数第二个元素,以此类推。
四、Set(集合)-介绍
1)Redis的set是string类型的无序集合
底层是HashTable数据结构,Set也是存放很多字符串元素,字符串元素是无序的,而且元素的值不能重复。
sadd emails tom@sohu.com jack@qq.com
smembers emails ///从集合中取出所有的元素
2)sadd
smembers [取出所有值]
sismember [判断值是否是成员]
srem [删除指定值]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

李元芳芳芳

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值