013-学习Redis-操作数据类型


远程操作客户端Redis。
-h是指定ip地址
-p是指定端口
-a是指定密码

启动项目,远程客户端

1、启动项目。
2、查看启动的redis是否成功
3、远程客户端
4、测试是否成功ping pong
在这里插入图片描述

一、操作数据类型:

1、String(默认存的是字符串):set

set :添加一条String类型数据
get :获取一条String类型数据
mset :添加多条String类型数据
mget :获取多条String类型数据

1、指定数据类型:
127.0.0.1:6379> select 1
OK
2、增加数据:
127.0.0.1:6379> mset sex 1 address beijing
OK
3、获取数据:
127.0.0.1:6379> mget name sex address
1) "zhangsan"
2) "1"
3) "beijing"

在这里插入图片描述

2、hash:hset

hset :添加一条hash类型数据
hget :获取一条hash类型数据
hmset :添加多条hash类型数据
hmget :获取多条hash类型数据
hgetAll :获取指定所有hash类型数据
hdel :删除指定hash类型数据(一条或多条)

user是hash的K。
name是hash的K。
张三是hash的value
name zhangsan是user的value
在这里插入图片描述


127.0.0.1:6379> hset user name zhangsan
(integer) 1
// 多个值
127.0.0.1:6379> hmset user age 18 sex 1
OK
127.0.0.1:6379> hmget user name age sex
1) "zhangsan"
2) "18"
3) "1"
// 取hash得k为user,下的所有value
127.0.0.1:6379> hgetall user
1) "name"
2) "zhangsan"
3) "age"
4) "18"
5) "sex"
6) "1"
127.0.0.1:6379> 

127.0.0.1:6379> hgetall user
1) "name"
2) "zhangsan"
3) "age"
4) "18"
5) "sex"
6) "1"
127.0.0.1:6379> hdel user name age
(integer) 2
127.0.0.1:6379> hgetall user
1) "sex"
2) "1"
127.0.0.1:6379> 


3、list:lpush /lrange/llen/lrem

lpush :左添加(头)list类型数据
rpush :右添加(尾)类型数据
lrange : 获取list类型数据start起始下标 end结束下标 包含关系
llen :获取条数
lrem :删除列表中几个指定list类型数据 (从左往右删除)

在这里插入图片描述
左添加:lpush students zhangsan lisi
先进行添加张三,这样张三是左边第一个
然后在进行添加李四,这样先把张三往后移动一个位置,然后再将空出来的第一个位置放入李四。

那么左添加,左取出。就可以理解为堆。先进后出
左添加,右取出,就可以理解为栈,先进先出
在这里插入图片描述

127.0.0.1:6379> lpush students zhangsan lisi
(integer) 2
127.0.0.1:6379> lrange students 0 1
1) "lisi"
2) "zhangsan"
/*
右边添加,先添加的wanghu,然后位置为右边第一个。
右边添加,后天见的zhaoliu,先把第一个位置的王五移动到右边第二个位置
然后再把赵六放到右边第一个位置。
*/
127.0.0.1:6379> rpush students wangwu zhaoliu
(integer) 4
127.0.0.1:6379> lrange students 0 3
1) "lisi"
2) "zhangsan"
3) "wangwu"
4) "zhaoliu"
127.0.0.1:6379> 
// 测试删除,是从左往右进行删除的。
127.0.0.1:6379> lpush students wanghu 
(integer) 4
127.0.0.1:6379> rpush students wanghu
(integer) 5
127.0.0.1:6379> lrange students 0 5
1) "wanghu"
2) "zhangsan"
3) "wangwu"
4) "zhaoliu"
5) "wanghu"
127.0.0.1:6379> lrem students 2 wanghu
(integer) 2
127.0.0.1:6379> lrange students 0 4
1) "zhangsan"
2) "wangwu"
3) "zhaoliu"
127.0.0.1:6379> 

4、set:sadd/smembers/scard/srem

sadd :添加set类型数据
smembers :获取set类型数据
scard :获取条数
srem :删除数据

无序集合,内部随机排序。每次打印都是固定排序

127.0.0.1:6379> sadd let a b c d e 
(integer) 5
127.0.0.1:6379> smembers let
1) "d"
2) "c"
3) "b"
4) "a"
5) "e"
127.0.0.1:6379> smembers let
1) "d"
2) "c"
3) "b"
4) "a"
5) "e"
127.0.0.1:6379> smembers let
1) "d"
2) "c"
3) "b"
4) "a"
5) "e"

// 查看几条数据:
127.0.0.1:6379> scard let
(integer) 5
删除数据: a c
127.0.0.1:6379> srem let a c
(integer) 2
查看数据:
127.0.0.1:6379> smembers let
1) "d"
2) "e"
3) "b"
127.0.0.1:6379> 

5、sortedSet: zadd/zrange/zcard/zrem

sorted set是通过分数值来进行排序的,分数值越大,越靠后。
zadd :添加sorted set类型数据
zrange :获取sorted set类型数据
zcard :获取条数
zrem :删除数据
zadd需要将Float或者Double类型分数值参数,放置在值参数之前

默认根据分数值,进行排序
在这里插入图片描述

二、Redis-cli操作通用命令

1、通用删除命令,五种类型通用。 del *

通用删除方法:del
在这里插入图片描述

2、reids key 失效时间

比如场景:登录某个网站,输入验证码,需要失效时间。

Redis 有四个不同的命令可以用于设置键的生存时间(键可以存在多久)或过期时间(键什么时候会被删除) :
EXPlRE :用于将键 key 的生存时间设置为 ttl 秒。
PEXPIRE :用于将键 key 的生存时间设置为 ttl 毫秒。
EXPIREAT < timestamp> :用于将键 key 的过期时间设置为 timestamp 所指定的秒数时间戳。
PEXPIREAT < timestamp > :用于将键 key 的过期时间设置为 timestamp 所指定的毫秒数时间戳。
TTL :获取的值为-1说明此 key 没有设置有效期,当值为-2时证明过了有效期。

设置K为code,V为text的字符串。 10秒钟失效时间
127.0.0.1:6379> set code text ex 10
OK
获取 K为code的字符串
127.0.0.1:6379> get code
"text"
查看举例失效的时间:还剩下两秒
127.0.0.1:6379> ttl code
(integer) 2
127.0.0.1:6379> ttl code
(integer) -2
127.0.0.1:6379> get code
(nil)
127.0.0.1:6379> 


在这里插入图片描述

3、层级关系,目录形式存储数据

设置目录结构
set a🅱️c value
获取目录结果
在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值